Open source CMS

Vibe code the site. Hand off a CMS.

Slim Minima is an open source CMS for vibe coders and the marketers they build for. Build your site the way you already do, then give the client an admin panel they can actually use to edit pages and write blog posts. No more “can you fix this one line” messages after the project is done.

Free and self-hosted. Open source under the MIT license.

Runs onNext.jsNeon PostgresCloudinaryMCP
drag to reorder
block engine
Slim Minima, minimal by designScroll

the problem

Vibe coding is fast. The handoff is where it breaks.

Vibe coding is fun, and it works. You describe what you want, watch the site come together, and ship something genuinely good in an afternoon.

The trouble starts after you deliver it.

Your client opens the repo and finds React components, props, and JSX. They wanted to change a headline. Now they have to ask you. They want to publish a blog post. They ask you again. They want to swap a hero image the day before a campaign, and you are back in the code on a weekend.

A vibe-coded Next.js site looks finished, but the person who has to run it cannot touch it. Every small edit routes back through you, and the project that was supposed to end never quite does.

That is the real cost of vibe coding for clients. The build is the easy part. Living with the result is the part nobody solves.

the solution

Build on Slim Minima, and the edits stop coming to you.

Slim Minima sits under your vibe-coded site as a small, quiet CMS. You keep building the way you like. The client gets an admin panel they can open without knowing any code.

When you hand the project over, you hand over a working site and a place to manage it: pages, blog posts, images, contact forms, menus, and settings, all editable through a visual editor.

The division of labour is simple. You build the custom blocks and the theme. The client manages the content at /admin. You ship it once, and they run it from there. That handoff is the whole reason I built Slim Minima.

how it works

Three steps from vibe to handoff.

01

Start on the foundation.

Clone Slim Minima and point your coding agent at it. The block engine, blog, media library, SEO, and admin panel already exist. The repo ships with an AGENTS.md that tells the agent exactly where to build and what to leave alone.

02

Vibe code your blocks and theme.

Add custom blocks as single files. Restyle the whole site from a handful of CSS variables. The block palette, forms, validation, and rendering wire themselves up when you register a block, so you spend your time on the parts that make the site specific.

03

Hand over the keys.

The finished site lives in the client's own repo, not a shared template. They log in at /admin, edit pages block by block, publish posts, manage media, and read contact form submissions. Your part is done.

Read how this site was built using this exact process

what's inside

What a marketer actually needs to run a site.

Slim Minima ships the things a content site actually needs, then stays out of the way. No plugin marketplace, no page-builder sprawl, no settings you will never open.

01

Visual page builder

Reorderable blocks, autosave, revisions, and scheduled publishing. Building a page feels like arranging it.

02

Article-first blog

A clean writing editor with categories, tags, and RSS. A client can write a post and publish it the same day.

03

Media library

Cloudinary-backed images with alt text and a 30-day trash bin, so an accidental delete is recoverable.

04

Reusable contact forms

Define a form once with the fields you want, then drop it onto any page from a dropdown. Submissions land in an inbox and can be emailed through Resend.

05

Roles and access

Admin and editor roles, so people only touch what they should.

06

Search and AI ready

Edit the meta title and description on any page straight from the editor, off the shelf, with no plugin to install. Canonical URLs, JSON-LD, sitemaps, robots.txt, and RSS are built in. It also ships /llms.txt, markdown page views, and an MCP server, so Claude, ChatGPT, and other agents can read and edit the site directly.

07

Schema markup, out of the box

Every page and post gets structured data automatically. Need more? Add a Product, Event, or LocalBusiness schema directly from the SEO panel. No code, no plugins, no developer.

08

Extensible block engine

Typed custom blocks defined by a schema. Register one file and the editor knows about it.

built for agents

Talk to your CMS
like it is code.

Point Claude Code or Codex at the MCP server and describe the change in plain language. It reads your schema and writes the blocks, and you review the diff. Slim Minima also ships AGENTS.md, a content CLI, and a REST API, so agents can build on it and manage content directly.

01 connect to mcp server
02 describe the change
03 agent writes blocks
04 review and publish
claude-code · slim-minima
claude mcp connect slim-minimaconnected to /admin · 17 block types · 6 pages › add an FAQ to the pricing page with 3 questions reading schema faq-accordion { items[] { question, answer } }✓ added faq-accordion block to page "pricing"✓ inserted 3 items, FAQPage JSON-LD emitted revision saved · cache revalidated · live open http://localhost:3000/pricingpublished · 1 block added, 0 removed

11 letters · 0 wasted

Minimal by name and by design.

Pages, posts, media, menus, SEO, and GEO. Nothing you don't need, nothing in the way. The CMS handles the ordinary so you and your AI agent can focus on the extraordinary.

built for two people

One product, two jobs done.

for vibe coders

A foundation that fits how you work.

Point your agent at the repo, build the blocks and theme, and ship. The blog, media, SEO, and admin are already handled, so the time goes into the interesting parts. When the project ends, it actually ends, because the client can manage the content without you.

for marketers

A site you can run yourself.

Edit pages, write posts, swap images, and read form submissions from one admin panel, without code and without waiting on a developer. The site is in your own repo, and you move at your own pace.

tech stack

Modern, self-hosted, no lock-in.

It runs anywhere Next.js does: Vercel, Netlify, Railway, Fly.io, or your own VPS. The site stays on your infrastructure, under your control.

Framework

Next.js

App Router. The whole CMS is one app you can read, fork, and extend.

/ 01
Database

Neon Postgres

Content lives in your database, in plain tables you can query directly.

/ 02
Media

Cloudinary

Images upload straight to your Cloudinary account, transformed and served on the edge.

/ 03
ORMDrizzle
AuthAuth.js
StylingTailwind CSS
EmailResend (optional)
LanguageTypeScript
HostingVercel, Netlify, Railway, Fly, VPS

get started

Up and running in five commands.

After cloning the repo.

bash
npm install
cp .env.example .env.local
# add DATABASE_URL, AUTH_SECRET, and Cloudinary keys
npm run db:migrate
npm run seed
npm run dev

Open http://localhost:3000 for the site and http://localhost:3000/admin for the panel.

Or you can just get your AI agent to do everything for you. See how to build a client-ready website with Slim Minima.

Slim Minima is free. Keeping it good is not.

Slim Minima is open source under the MIT license and will stay that way. There is no paid tier and no upsell. It is maintained in spare hours by someone who would rather build than ask for money.

If it saved you a handoff headache or earned you a happier client, a donation helps cover the maintenance and keeps the updates coming. Any amount is appreciated, and none of it is required to use the project.

Donate via PayPal

Pay nothing and use it forever, or chip in if it earned its keep.

Frequently asked questions

Is Slim Minima free?

Yes. It is open source and self-hosted, with no license fee and no per-seat pricing.

Why do I even need a CMS when my AI agents can code anything?

Because you will not always be the only one touching the site. Sooner or later you will have co-workers, clients, and other people who need to help edit it, and handing every one of them the codebase is neither practical nor safe. A CMS gives them a simple admin panel instead. On top of that, firing up an AI agent for every small edit is a waste of tokens, and tokens are only getting more expensive. A CMS lets anyone make simple changes in seconds, no agent required.

Do I have to give up vibe coding?

No. You keep vibe coding the blocks and theme. Slim Minima adds the CMS layer underneath so the client can edit what you ship.

Can a non-technical client really use it?

Yes. The admin panel is a visual editor. Pages are built from blocks, posts use a plain writing editor, and media is managed by clicking. No code or terminal is needed.

Where does the site live after handoff?

It depends on your arrangement with the client. Slim Minima is only a CMS, and we recommend a stack of Vercel, Cloudinary, and Neon Postgres. If you follow our default steps, the codebase lives in GitHub, the site is deployed to Vercel, content lives in the Neon Postgres database, and media lives in Cloudinary. All of this can be set up on the client's own accounts, so the codebase, content, and media all sit on accounts the client owns and controls. That is just our default. You can choose your own stack instead. Adjustments to the core code will be required to swap any of it out, but in today's day and age that is easy with tools like Claude Code and Codex.

What services do I need to run it?

A PostgreSQL database and a place to store media. Neon and Cloudinary are the defaults, but both are swappable: any Postgres host works, and media storage can be pointed at S3, Cloudflare R2, or your own server. Resend is optional, for contact form emails. Everything else is in the box. Curious what the free tiers cover? See how far the free stack stretches.

Does it work with AI agents?

Yes. It ships with AGENTS.md, a content CLI, a REST API, and an MCP server, so agents like Claude and ChatGPT can build on it and manage content directly.

What if I need more features? Why are there no plugins?

This is the vibe coding age. You can build anything you want, so there is no plugin marketplace to wait on and no extension to install. If you need a feature, ask your AI agent to build it. That is the whole point. Here is why the plugin model no longer makes sense in the AI age.

Will images always show correctly when I restore an old version?

Yes, as long as the image still exists in your media library. If you permanently deleted an image after saving that version, the restored version will show a broken image in its place. Removing an image from a post or page does not delete it from media - only a permanent delete from the Media Trash causes this.

I am not very technical. Is Slim Minima for someone like me?

Yes and no. You do not need to be a traditional developer, but you should be comfortable using AI coding agents like Claude Code or Codex to build and make changes. Slim Minima is built for vibe coders - people who ship with AI rather than from scratch. If you want to get up to speed, Axecute offers 1:1 AI agent training.

My client wants full layout control, like Elementor. What can they do?

Slim Minima is built for marketers and vibe coders, not drag-and-drop builders. Most text and block content is editable from the admin panel. For deeper layout changes, plug the codebase into an AI agent like Claude Code or Codex and describe what you want. An agent can build virtually anything natively. You can even build your own Elementor-type editor with your AI agents if you want to. Need help getting started with AI agents? Axecute offers 1:1 AI agent training.

Can I migrate from WordPress to Slim Minima without losing my SEO?

Yes. Your SEO lives in your backlinks, content, and URLs, not in WordPress itself. Match your old URLs one to one with your new pages, add permanent redirects for anything that changed, and your rankings carry across. See the full migration guide for the exact steps.

Is there vendor lock-in? Can my client switch agencies or developers later?

No lock-in. The client owns a standard Next.js and Postgres codebase that any competent developer can pick up. If a developer looks at it and says they have no idea what to do with it, that is not a Slim Minima problem. That is a sign to find a different developer.

I am sold, but my clients are adamant about sticking to a more renowned, reputable CMS. What do you suggest I do?

We agree that convincing someone to switch CMS can be an uphill task, so we have done some of the work for you. The questions in this FAQ are written to give you ready answers to the more straightforward objections. For the harder ones, our blog goes deep on exactly the points clients push back on most. Security is usually the big one, so start with Is Slim Minima secure? and If the code is public, can't someone just hack it? Cost is the other, covered in how far the free stack stretches. Read through them, take the points that fit your client, and build a convincing narrative of your own. The material is there to give you the ammunition. The pitch is yours to make. If you still have any queries or doubts, feel free to contact us directly.

Ship the site,
and let the client run it.

If you build sites for other people, you already know the part that drags on is the support after delivery. Build on Slim Minima, hand over a real CMS, and let clients manage their own pages and posts. Free, open source, and self-hosted.