A Vue starter that search engines can actually read.
Every route prerenders to static HTML with its own title, canonical URL and structured data. No client-side metadata guesswork.
- Vue 3
- Vite
- TypeScript
- Tailwind CSS
- vite-ssg
- Cloudflare Pages
What you get
Four things you would otherwise build twice
Each one exists because getting it wrong is invisible in development and expensive in production.
Structured data graph
Generated sitemap and robots
Enforced layering
How it works
Three stages, one source of truth
Nothing in the output is maintained by hand, which is why nothing in it can disagree with the configuration.
Configure once
Site facts, the identity the site is about and the route table live in one place each. Every URL, title and entity is derived from them.
Build and prerender
vite-ssg renders every route to its own HTML file, with metadata and JSON-LD already in the markup.
Ship static files
The sitemap, robots file and manifest are generated from what was actually rendered, then the whole directory deploys to any static host.
Start from a template that already got the boring parts right
Clone it, replace the config, delete the example routes. The wiring is what you keep.