1.5 KiB
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, Markdown-backed FAQ
accordions, and an 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.
Phase 6 adds two validated Markdown collections:
sites/blog/content/posts/*.mdproduces the journal listing and individual/posts/<slug>/pages onblog.3031023.xyz.sites/www/content/faq/*.mdproduces the FAQ section on the primary-site homepage.
Both collections require frontmatter and support draft: true. Draft entries
are excluded from the rendered pages and sitemap. This is a Git-backed pilot;
it does not add a CMS or client-editing access.
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.
Each selected build also generates sitemap.xml and robots.txt. Preview
builds disallow indexing; a future approved production build must set
DEPLOY_ENV=production to publish crawlable robots rules and the sitemap URL.