Building my portfolio with Keystatic
I just launched this new portfolio site, and I wanted to share why I chose Keystatic as my content management solution.
Why Not WordPress or Strapi?
As a TypeScript developer with over 10 years of experience, I've worked with countless CMS platforms. For this personal portfolio, I initially considered WordPress and Strapi—both excellent tools that I've used professionally. However, they felt like overkill for what I needed.
The problem with traditional CMS platforms:
- WordPress is powerful but comes with overhead I don't need. Plugin management, database setup, PHP hosting, and security updates for a simple portfolio? No thanks.
- Strapi is fantastic for complex applications, but running a full headless CMS with a database just to manage a few blog posts seemed excessive.
Enter Keystatic
Keystatic is exactly what I needed: a lightweight, Git-based CMS that integrates seamlessly with Next.js. Here's why it's perfect for this use case:
File-Based Content
Content lives as Markdown files in my Git repository. No external database, no complicated setup. Just files I can version control alongside my code.
Developer-Friendly
As someone who lives in VS Code, I can edit posts directly in my editor or use Keystatic's admin UI when I want a nicer interface. Best of both worlds.
GitHub Integration
With GitHub mode enabled, Keystatic commits directly to my repository. When I publish a post through the admin UI, it triggers an automatic deployment on Vercel. Content publishing couldn't be simpler.
Zero Overhead
No database to manage. No server to maintain. No security patches to worry about. It's just static files and modern web technologies.
The Tech Stack
Here's what powers this site:
- Next.js 15 - React framework with App Router
- Keystatic - File-based CMS with GitHub integration
- TypeScript - Type-safe development
- Vercel - Hosting and automatic deployments
Perfect for Personal Sites
For a personal portfolio that needs basic blog functionality, Keystatic hits the sweet spot. It gives me:
- ✅ Content management without complexity
- ✅ Version control for content
- ✅ Fast performance (static files)
- ✅ Simple deployment workflow
- ✅ Developer-friendly experience
Sometimes the best solution isn't the most powerful—it's the one that solves your problem without introducing unnecessary complexity. For this portfolio, that's Keystatic.
If you're building a personal site or small project and want a CMS that doesn't get in your way, I highly recommend giving it a try.