TL;DR
I built a production-ready blog CMS using modern tools like Next.js (App Router), Supabase, and Tailwind. It has auth, roles, drafts, an AI assistant, and a headless API. It’s open-source — and yes, you can try it right now 👇
👉 Live: https://blog.frankmendez.site/blog
👉 Repo: https://github.com/frank-mendez/nextjs-blog-cms
👉 Register: https://blog.frankmendez.site/register
🤔 Why I Built This
Let’s be honest — most CMS platforms fall into two categories:
- Too simple → great for beginners, painful for devs
- Too complex → enterprise-level headache just to publish a blog post
I wanted something in between:
- Developer-friendly
- Production-ready
- Actually enjoyable to use
Also… I got tired of wiring the same auth + roles + editor setup over and over again. So I decided to build it once — properly.
🧠 What This CMS Can Do
This isn’t just a “Hello World blog.” It’s a serious CMS disguised as a clean UI.
🔐 Authentication & Roles
- Supabase Auth out of the box
- Role-based access control (Admin / Author)
- Enforced using Row Level Security (RLS) — not just frontend checks (we don’t do fake security here)
✍️ Writing Experience
- WYSIWYG editor (because Markdown wars are over… mostly)
- Draft & publish workflow
- Clean writing interface without distractions
🤖 AI Writing Assistant
Yes, there’s AI. Because of course there is.
- Generate content ideas
- Assist in writing posts
- Speed up your workflow when your brain says “nope”
🔌 Headless API
- REST API ready to plug into anything
- Use it for mobile apps, dashboards, or your next side project
⚡ Developer Experience
- Built with Next.js App Router
- Styled with TailwindCSS + shadcn/ui
- Clean structure, easy to extend
- MCP-powered workflows (because we like things fast)
🛠️ Tech Stack
- Frontend: Next.js (App Router)
- Backend: Supabase (DB + Auth + RLS)
- UI: TailwindCSS + shadcn/ui
- AI: OpenAI integration
- Deployment: Vercel-ready
Basically, if you’re a modern frontend dev — this stack will feel like home.
👀 Live Demo
Don’t take my word for it — try it yourself:
👉 Browse posts:
https://blog.frankmendez.site/blog
👉 Create an account:
https://blog.frankmendez.site/register
Yes, you can actually use it. No “coming soon” nonsense.
💡 Why You Might Find This Useful
This project is perfect if you:
- Want a starter CMS without reinventing auth + roles
- Are learning Next.js + Supabase in a real-world setup
- Need a headless blog backend
- Want to study RLS done right (seriously, this part matters)
- Just like exploring clean, modern full-stack apps
📦 Open Source (And Why I Need Your Help)
Here’s the thing — open source only works if people actually… use it 😅
If you find this useful:
⭐ Star the repo → https://github.com/frank-mendez/nextjs-blog-cms
🍴 Fork it and build your own version
🐛 Open issues / suggest improvements
🚀 Share it with other devs
Every star helps push this project further (and tells me I’m not coding into the void).
🧭 What’s Next
I’m planning to add:
- Comments system
- Better SEO tooling
- More AI features (without turning it into Skynet)
- Plugin system (maybe 👀)
🧵 Final Thoughts
This project started as “I just need a blog CMS…”
…and turned into a full-blown platform.
If you’ve ever thought:
“There has to be a better way to build this stack…”
Yeah — same. This is my attempt at that.
If you try it out, I’d love to hear your feedback.
If it breaks… well, congratulations, you found a feature.
Happy building 👨💻
Top comments (0)