Back to templates

Template details

OperStack Astro Starter

Astro starter for content sites that rank and get cited: five collections, answer-first layouts, generated llms.txt, honest sitemap and sixteen gates.

About this template

OperStack Astro Starter is an MIT-licensed Astro starter from OperStack for content sites built to rank in search, get cited by answer engines and convert, shipping five content collections, an answer-first article layout, generated llms.txt endpoints and sixteen OperStack gates wired into the build.

What is OperStack Astro Starter?

OperStack Astro Starter is a static Astro template that turns Markdown and MDX files into a gate-checked content site. It takes content in five collections (guides, areas, comparisons, projects, news) plus a single site.config.mjs, and outputs a static build in dist/ with an article layout, entity data cards, JSON-LD schema, a sitemap, llms.txt and llms-full.txt endpoints, a .well-known/agent.json agent card, and a Markdown rendition of every page. Because the build is static, any host that serves a folder works, including Vercel, Netlify and Cloudflare Pages. It is published by OperStack under the MIT license, and a public demo of the fictional Isla Verde market site runs at demo.oper-stack.com.

What makes OperStack Astro Starter stand out?

  • Five wired content collections — guides, areas and comparisons use the article schema with ArticleLayout; projects use the entity schema with EntityLayout (developer, district, status, completionYear, unitsTotal, priceFrom, currency, sources); news covers one dated change.
  • Answer-first layout components — TldrBlock, FaqBlock, Callout, RelatedGuides, AuthorBox, ContactCta, ResponsiveImage, EntryList, Header, Footer and Breadcrumbs; FAQPage schema is emitted once by the layout, never by the component, so it cannot duplicate.
  • Sixteen OperStack gates — configured through gates.config.json with the currency sign to reject, place names, citable sources and word minimums; npm run verify builds and runs the gates with warnings treated as failures.
  • Generated llms.txt and Markdown renditions — llms.txt lists every indexable page by collection with its description while llms-full.txt carries the full text, and both are rebuilt on every build so gate 14 cannot find drift.
  • Honest sitemap — real lastmod from frontmatter or none at all, excluding noindex pages, drafts, the thank-you page and every redirect source declared in vercel.json.
  • One config file for identity — site.config.mjs holds every name, place, currency, contact detail, navigation entry and the agent summary, so the site becomes yours without touching templates.
  • AI coding assistant rules — twelve .cursor/rules files plus CLAUDE.md and AGENTS.md describe what the gates reject, so models stop producing it.
  • Theming and mobile defaults — light and dark themes from one token set in src/styles/global.css (change --accent and --paper), 44 px touch targets, a menu that traps scroll and closes on Escape, and scrolling tables.

Who should use the OperStack Astro Starter?

  • Niche-site publishers and solo content operators: launch an answer-first guide and comparison corpus where every page passes automated quality checks before it ships.
  • SEO and AEO consultants: standardize client sites on one config-driven skeleton with a sitemap, structured data and llms.txt that stay honest by construction.
  • Teams entering a defined market: replace the Isla Verde demo corpus with their own guides, district profiles, comparisons, project cards and news, then keep the machinery.
  • Developers working in Cursor or Claude Code: lean on the bundled rules and CLAUDE.md map so generated copy survives npm run verify.

What can you do with OperStack Astro Starter?

  • Real-estate and location publishers: model neighbourhoods as articles and buildings as entity data cards sourced from named references.
  • Comparison publishers: put the verdict first in comparison articles that answer one buying question end to end.
  • AI-visibility work: serve llms.txt, llms-full.txt and a .md rendition of every page so answer engines read clean text.
  • Fast scaffolding: run npm run new guides "Your first title" to generate a page from the matching MDX skeleton in templates/.

How does OperStack Astro Starter work?

  1. Clone the repo, run npm install and npm run dev for a hot-reload server.
  2. Edit site.config.mjs (the site passport) and gates.config.json (thresholds and allow-lists).
  3. Delete the demo content in src/content/ and scaffold your own with npm run new.
  4. Run npm run verify before deploying; it builds first so gate 08 checks real HTML and gate 14 reads the generated dist/llms.txt.

FAQ

Is OperStack Astro Starter free?

Yes. It is released under the MIT license by OperStack and there is no pricing tier on the page. The only external services it optionally calls are IndexNow and the Google Indexing API, and both require your own credentials — an INDEXNOW_KEY and a service-account key for the site's own project.

What framework and styling does it use?

It is an Astro starter with a static build output in dist/, so it deploys to Vercel, Netlify or Cloudflare Pages. Styling is plain CSS driven by design tokens in src/styles/global.css rather than Tailwind, and swapping --accent and --paper retheme the whole site.

Does it generate structured data and an llms.txt file?

Every page gets Organization and WebSite schema from the config. Articles add Breadcrumb, Article and FAQPage schema, entity cards add Place schema, and the build emits llms.txt plus llms-full.txt listing and reproducing every indexable page, alongside a Markdown version of each page.

Can I reuse the Isla Verde demo content?

No. Isla Verde is fictional: every district, project, developer, price, fee, rule and statistic was invented to demonstrate a complete gate-passing corpus, and the page states that no figure from it should appear on a real site. The shipped og-default.png social card is also the Isla Verde demo image and should be replaced before launch.

How do I keep a staging copy out of search engines?

Set PREVIEW_NOINDEX=1 at build time to mark every page noindex and drop canonical tags, and optionally set SITE_URL to override the production origin so canonicals, the sitemap and schema point at the preview host. robots.txt stays open on purpose so link previews still read the page and social image.

screenshot of OperStack Astro Starter on template0.com