This is an example of using Minima as a headless CMS, with Nuxt and Nuxt UI on the front end. It's adapted from the Nuxt UI Portfolio template.
- We generate a typed SDK from the Minima OpenAPI documentation using Hey API
./pages/[...path].vueis a catch-all route which hits the Minima API to fetch the resource for that path./app/components/BodyRenderer.vuehandles turning the Tiptap/ProseMirror JSON into Prose components, which you can read more about in Nuxt UI's typography documentation
Make sure to install the dependencies:
pnpm installCopy the example .env:
cp .env.example .envCreate a public API key for your site by going to Settings -> API Keys in the Minima application and add it to .env:
NUXT_PUBLIC_MINIMA_PUBLIC_API_KEY=pub_abc123xyz987
Start the development server on http://localhost:3000:
pnpm devBuild the application for production:
pnpm buildDeploy to Cloudflare:
pnpm deploy:cloudflareCheck out the deployment documentation for more information.