Content-ready
Author pages in Astro or MDX, with syntax highlighting and a typography system already in place.
MDX · Shiki · SEO
A practical Astro foundation that handles the repetitive setup, then gets out of your way. Keep the parts you need, replace the rest, and make the project yours.
Feature by feature
Each layer is independent. Remove one without unravelling the rest, or keep the complete setup and start shipping.
Author pages in Astro or MDX, with syntax highlighting and a typography system already in place.
MDX · Shiki · SEO
Use React when interaction earns its place. Everything else ships as straightforward HTML and CSS.
React 19 · Astro islands
Semantic tokens, dark mode, Tailwind utilities, and shadcn primitives form a system you can extend.
Tailwind 4 · shadcn/ui
The dev container, mise tasks, pnpm, Biome, and repository hooks keep environments predictable.
Dev Container · mise · pnpm
Clear by default
Pages stay declarative. Content stays close to the product. Interactive pieces opt into JavaScript instead of making it the default.
---
import BaseLayout from "@/layouts/BaseLayout.astro"
import FeatureGrid from "@/components/FeatureGrid.astro"
const features = await getCollection("features")
---
<BaseLayout title="Build something useful">
<FeatureGrid items={features} />
</BaseLayout>From zero to useful
Use template Create a clean repository from the maintained starting point.
Open container Let the project install its declared runtime and development tools.
mise run dev Start Astro and turn the foundation into your own product.
A starting point, not a cage
Delete freely. Extend deliberately. Keep ownership of every line.