Alejandro Cantero Jódar
Alejandro Cantero Jódar

Best Open-Source Headless CMS (SQLite compatible) for 2025

· Open Source Alejandro Cantero Jódar

Best Open-Source Headless CMS (SQLite compatible) for 2025

I’ve been searching for the best open-source headless CMS for my personal blog, and one of my top priorities was finding something cheap, scalable, and easy to manage. Since I didn’t want to deal with complex database setups, SQLite became an obvious choice—it’s lightweight, requires minimal configuration, and can be deployed anywhere. After diving deep into various options, researching community opinions, and testing a few myself, I’ve compiled a list of the best open-source headless CMS that support SQLite and can be easily deployed using Docker.

Strapi

Strapi is a widely popular open-source headless CMS written in JavaScript/TypeScript. It provides both REST and GraphQL APIs, making it flexible for different use cases. The admin panel, built with React, is sleek and highly customizable. It supports SQLite, along with other databases like PostgreSQL, MySQL, and MariaDB.

Key Features:

  • API-first approach (REST & GraphQL support)
  • User authentication and role-based access control (RBAC)
  • Plugin system for extending functionality
  • Easy customization of API endpoints and admin UI
  • File and media management
  • Good documentation and active community support

Pricing: Strapi is free under the MIT license. They offer Strapi Cloud (a managed hosting service) with paid plans, but self-hosting is entirely free. Previously, advanced RBAC features were behind a paywall, but they are now available for free in version 4.8.

User Opinions: Strapi has a strong following, but opinions vary. Some developers love its flexibility and plugin system, while others find it requires too much customization for advanced use cases. Issues like migration between versions and occasional bugs have been mentioned, but the overall sentiment is that Strapi is improving with each release.

GitHub Repository

Directus

Directus takes a unique approach by acting as a wrapper around any SQL database, meaning it works with existing databases without enforcing a strict schema. This makes it a fantastic choice for those who want a fully customizable database structure.

Key Features:

  • Works with SQLite, PostgreSQL, MySQL, and other databases
  • Auto-generates REST and GraphQL APIs
  • User-friendly admin panel (Directus Studio)
  • Role-based access control (RBAC) with granular permissions
  • Webhooks and real-time event system
  • Extensible with custom modules

Pricing: Directus is open-source under the BSL 1.1 license. It’s free for most users unless a company exceeds $5 million in revenue. They also offer Directus Cloud, starting at $15/month for managed hosting.

User Opinions: Many developers appreciate Directus for its “database-first” philosophy, allowing them to use existing SQL structures without modifications. The UI is well-received, and the learning curve is considered manageable. However, some users find Directus lacking in multi-language content handling.

GitHub Repository

KeystoneJS

KeystoneJS is a headless CMS and GraphQL API framework designed for full customization. It follows a code-first approach, where schemas and configurations are written in JavaScript/TypeScript.

Key Features:

  • Built-in GraphQL API
  • Fully customizable schema definitions
  • User authentication and session handling
  • Role-based access control
  • Supports SQLite, PostgreSQL, and MySQL
  • Plugin system for extending functionality

Pricing: Keystone is completely free under the MIT license. There are no paid plans or commercial services; it’s fully community-driven.

User Opinions: Keystone is well-loved by developers who prefer a code-first approach. It offers fine-grained control over content models but has a steeper learning curve compared to Strapi or Directus. Users also note that it lacks some out-of-the-box features, such as built-in multi-language support.

GitHub Repository

Payload CMS

Payload is a modern headless CMS focused on developer experience, with full TypeScript support and a minimalistic admin panel.

Key Features:

  • Full TypeScript support
  • REST and GraphQL APIs
  • Custom field types and UI extensions
  • User authentication with JWT
  • Versioning and draft/publish workflows
  • Supports SQLite, PostgreSQL, and MongoDB

Pricing: Payload is open-source under the MIT license, meaning self-hosting is free. However, they offer Payload Cloud, a managed hosting option starting at $35/month.

User Opinions: Payload has gained traction for its developer-centric approach. Users appreciate its clean API, extendability, and built-in authentication. However, it requires some initial setup and configuration, making it better suited for experienced developers.

GitHub Repository

Cockpit CMS

Cockpit is a lightweight PHP-based headless CMS designed for simplicity. It supports SQLite out-of-the-box, making it an excellent choice for small projects that require minimal setup.

Key Features:

  • Simple and intuitive UI
  • API-first approach with RESTful JSON endpoints
  • Multi-language content support
  • Role-based user management
  • Extensible via plugins

Pricing: Cockpit is free under the MIT license. However, they offer Cockpit Pro, a one-time purchase (€299 per project) for premium add-ons like cloud storage, webhooks, and enhanced multi-language features.

User Opinions: Cockpit is highly regarded for its simplicity and speed, making it ideal for smaller projects or those who prefer a minimalistic CMS. However, its community is smaller, and the lack of built-in GraphQL support might be a downside for some.

GitHub Repository

Final Thoughts & Plot Twist

After all this research, I actually decided to go with PocketBase. While it’s not exactly a CMS, it’s more of a Backend-as-a-Service (BaaS) created by Gani. Despite still being in its pre-1.0 phase, PocketBase is actively maintained and provides a rapid development experience with SQLite at its core. What I love most is that if I ever need something more advanced, migrating away from it is relatively straightforward.

GitHub Repository

SQLite is an excellent choice for self-hosted alternatives, and each of these CMSs has its strengths. However, after testing them, I found PocketBase to be the best fit for my personal needs!

Related posts

Alejandro Cantero Jódar

Made with ♥ by a passioned developer © 2025