---
description: Keep Meshkee static-image slots and their storefront catalog synchronized
alwaysApply: true
---
# Meshkee Static Images
- Use the canonical contract at `https://api.meshkee.com/docs/website`; do not invent upload or dashboard APIs.
- Fetch static-image slots once per page from `/api/v1/tenants/{domain}/website/static-images?pageKey={pageKey}`.
- Match placeholders by `slot.key`. Use every image for `kind: "list"` and only the first image for `kind: "single"`.
- Render `image.url` in an `
`, use localized titles for content and `alt`, and wrap the image in an `` when `linkUrl` is present.
- Keep local placeholder images when a slot is empty or the API request fails.
- Keep `app/meshkee/static-image-slots/route.ts` synchronized with every static-image placeholder.
- Whenever a placeholder's rendered dimensions or crop ratio change, update that slot's `aspectRatio` and `recommendedWidth` in the catalog.
- Update `CONTEXT.md` when a prompt changes routes, API integrations, slot keys, or other project architecture.