Getting Started with PagesCMS
PagesCMS is an open-source content management system that works differently from traditional CMS platforms. Instead of storing your content in a database, it edits files directly in your GitHub repository.
Why PagesCMS?
Most static sites already have everything they need:
- Content lives in files (Markdown, MDX, YAML)
- Media is stored in the repository
- Git provides version history
- CI/CD handles deployments
The missing piece has always been the editing experience. PagesCMS fills that gap by providing a clean, intuitive UI for editing content without requiring every team member to learn Git.
How It Works
- Add a
.pages.ymlconfig to your repository - Define your content structure — collections, fields, media paths
- Sign in at app.pagescms.org with GitHub
- Start editing — changes are committed directly to your repo
Key Features
Visual Rich-Text Editor
Write and format content with a full-featured rich-text editor. No need to write Markdown manually unless you want to.
Media Management
Upload images through a drag-and-drop interface. PagesCMS organizes them in your configured media folder.
Customizable Content Types
Define collections with any combination of fields — strings, dates, images, rich text, code blocks, and more.
Git-Native Workflow
Every save is a Git commit. Your existing deployment pipeline picks up changes automatically.
Configuration Example
Here’s a minimal .pages.yml configuration:
media: media
content:
- name: posts
label: Blog Posts
type: collection
path: src/content/blog
fields:
- name: title
type: string
- name: body
type: rich-text
This creates one collection for blog posts with a title and rich-text body.
Getting Your Team Onboard
PagesCMS supports GitHub-based authentication, so anyone with access to your repository can edit content. You can also configure granular permissions through the collaborators settings.
The best part? No training required. If someone can use a word processor, they can use PagesCMS.