Sanity × Nuxt UI: A Block-Based Website Builder
A website template where editors compose pages from ready-made blocks in Sanity Studio and Nuxt renders every block with Nuxt UI components.




Editors Change Pages, Developers Stay Calm
Marketing sites, portfolios, and blogs never stop changing. If every copy or image tweak waits on a developer, the site falls behind. Yet a CMS with no guardrails tends to break the design.
Sanity × Nuxt UI sits in between. Editors build pages from pre-designed blocks in Sanity Studio, and the Nuxt site renders each block with Nuxt UI components. The design stays consistent while editors stay in charge of the content.
Key Features
- 13 page-builder blocks: hero, features, card grid, timeline, image gallery, rich text, testimonials, FAQ, pricing, call to action, callout, logo cloud, and collection list.
- Collections without code: create a Blog, Gallery, Projects, Services, or Team straight from the Studio. Each one gets a list page and entry pages automatically.
- Visual Editing: click any text in the Presentation tool to edit it, with a live draft preview.
- Site search (
Ctrl/⌘ + K) across pages, collections, and entries in the language being viewed. - Optional multilingual setup: each page is translated as its own document, and URLs get a language prefix such as
/id/about. - Full SEO via Nuxt SEO: sitemap, robots.txt, schema.org, and on-theme OG images for pages without one.
- Swiss-style theme with scroll-driven animations in pure CSS, in light and dark mode.
Ready to Use
Spin it up with a single npm create sanity@latest -- --template narr07/sanity-nuxtui, then deploy to Vercel, Cloudflare, Node, or as a static site. Sanity TypeGen keeps everything type-safe from schema to component.