Open-source headless CMS that edits Markdown, MDX, JSON and YAML content stored in your own Git repository, with a GraphQL API.
hunvreus/pagescms
Open source CMS that lets you edit content and media directly in a GitHub repository, aimed at static sites built with Jekyll, Hugo, Next.js, Astro and similar tools.
Open-source alternative to:Netlify CMS
- Stars
- 4,112
- Forks
- 578
- Open issues
- 84
- Last commit
- 5 days ago
What is it?
Pages CMS is a content management system that works on top of a GitHub repository. Content and media files are stored in the repo itself, so editors can change posts and images through a web interface while the changes are committed back to Git.
It is designed for static sites and content-driven apps built with generators such as Jekyll, Hugo, Next.js, Astro, VuePress and similar stacks. The project can be used through the hosted app at app.pagescms.org, or run locally from this repository, which requires PostgreSQL, a GitHub App and a few environment variables.
The codebase is written in TypeScript and released under the MIT License.
Key features
- 01Edit content and media in a web UI that commits changes to the GitHub repository.
- 02Works with static site generators such as Jekyll, Hugo, Astro and Next.js.
- 03Authenticates through a GitHub App.
- 04Can be self-hosted locally with PostgreSQL and a setup helper for the GitHub App.
Use cases
- Letting non-developer editors update a blog or documentation site without touching Git directly.
- Managing content for a Jekyll, Hugo or Astro site from a browser.
- Self-hosting an editing interface for a static site repository.
Quick start
- 1
Clone the repository
git clone https://github.com/pagescms/pagescms.git - 2
Start a local PostgreSQL database with Docker
docker run --name pagescms-db -e POSTGRES_USER=pagescms -e POSTGRES_PASSWORD=pagescms -e POSTGRES_DB=pagescms -p 5432:5432 -d postgres:16 - 3
Install dependencies
npm install - 4
After creating .env.local, running migrations and the GitHub App setup, start the app
npm run dev
Things to know
- Running it locally requires PostgreSQL, a GitHub App and a manually created .env.local file.
- The hosted version at app.pagescms.org is the simplest option if you do not want to self-host.
Topics
FAQ
- What is pagescms?
- Open source CMS that lets you edit content and media directly in a GitHub repository, aimed at static sites built with Jekyll, Hugo, Next.js, Astro and similar tools. Pages CMS is a content management system that works on top of a GitHub repository. Content and media files are stored in the repo itself, so editors can change posts and images through a web interface while the changes are committed back to Git.
- Is pagescms free to use? What license does it have?
- pagescms is open source under the MIT license. Check the license terms before using it in commercial products.
- Is pagescms still maintained?
- Actively maintained. The last commit to pagescms was on Oct 16, 2026.
- What can I use pagescms for?
- Letting non-developer editors update a blog or documentation site without touching Git directly. Managing content for a Jekyll, Hugo or Astro site from a browser. Self-hosting an editing interface for a static site repository.
- How do I install pagescms?
- Clone the repository: git clone https://github.com/pagescms/pagescms.git Start a local PostgreSQL database with Docker: docker run --name pagescms-db -e POSTGRES_USER=pagescms -e POSTGRES_PASSWORD=pagescms -e POSTGRES_DB=pagescms -p 5432:5432 -d postgres:16 Install dependencies: npm install After creating .env.local, running migrations and the GitHub App setup, start the app: npm run dev
- Where can I get pagescms?
- The source code and installation instructions are on GitHub: https://github.com/hunvreus/pagescms
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Open-source Next.js-native headless CMS and app framework with a TypeScript backend and customizable React admin panel.
A scaffolder that generates an editable Astro documentation site into your repo, with agent-readable Markdown and llms.txt output built in.
Open-source, self-hosted headless CMS in TypeScript that generates REST and GraphQL content APIs from your content models.
A documentation site generator that turns Markdown files into a website with no build step required.
A full-stack TypeScript CMS built on Astro that aims to bring WordPress-style extensibility and admin UX to serverless, with sandboxed plugins.