810 B
Static site content model
Each hosted site has a validated sites/<key>/site.json. It owns its brand
fallback/logo, SEO image, navigation, page content, contact information, and
whether a physical-address map is displayed. Shared Astro components render
that data without a per-site code fork.
Current reusable primitives include the base SEO layout, header/footer,
full-page hero, section heading, CTA band, review cards, and optional location
map. A real logo can be provided as /images/<safe-name>.svg or image asset;
until then the configured short mark and shared favicon are used.
Images must live under public/images/, be referenced with descriptive alt
text where rendered, and remain at or below the 500 KiB pilot limit. The build
will reject malformed site JSON and oversize source images.