# Pages CMS ## About Open-source CMS for static sites on GitHub. Edit content, media, and configuration directly from your repository. ## Docs ### Getting started - [Introduction](https://pagescms.org/docs/): What Pages CMS is, who it is for, and how it works. - [Quick start](https://pagescms.org/docs/quick-start/): The fastest path from zero to a working Pages CMS setup. ### Configuration - [Media](https://pagescms.org/docs/configuration/media/): Configure where uploaded files are stored and what URLs are written. - [Editors](https://pagescms.org/docs/configuration/content/editors/): Choose between structured fields, raw files, code, and datagrid editors. - [Filename](https://pagescms.org/docs/configuration/content/filename/): Control how new collection entries are named. - [List](https://pagescms.org/docs/configuration/content/list/): Configure repeated fields and top-level arrays. - [Operations](https://pagescms.org/docs/configuration/content/operations/): Control create, rename, and delete behavior for content entries. - [Fields](https://pagescms.org/docs/configuration/content/fields/): Define the editor schema for collections and files. - [View](https://pagescms.org/docs/configuration/content/view/): Control how collections are listed in the editor. - [Components](https://pagescms.org/docs/configuration/components/): Reuse field definitions across multiple content models. - [Actions](https://pagescms.org/docs/configuration/actions/): Add custom GitHub Actions buttons to Pages CMS. - [Collaborators](https://pagescms.org/docs/configuration/collaborators/): What collaborators can do and how their changes are committed. - [Settings](https://pagescms.org/docs/configuration/settings/): Configure repository-wide behavior in Pages CMS. ### Fields - [Block field](https://pagescms.org/docs/configuration/fields/block/): Let editors choose between multiple object shapes. - [Boolean field](https://pagescms.org/docs/configuration/fields/boolean/): True/false toggle. - [Code field](https://pagescms.org/docs/configuration/fields/code/): Code editor with syntax highlighting. - [Date field](https://pagescms.org/docs/configuration/fields/date/): Date or date-time input with formatting and bounds. - [File field](https://pagescms.org/docs/configuration/fields/file/): Select or upload non-image files from media. - [Image field](https://pagescms.org/docs/configuration/fields/image/): Select or upload images from media. - [Number field](https://pagescms.org/docs/configuration/fields/number/): Numeric input for integers and decimals. - [Object field](https://pagescms.org/docs/configuration/fields/object/): Group nested fields under one key. - [Reference field](https://pagescms.org/docs/configuration/fields/reference/): Search and link entries from another collection. - [Rich-text field](https://pagescms.org/docs/configuration/fields/rich-text/): WYSIWYG editor for formatted content. - [Select field](https://pagescms.org/docs/configuration/fields/select/): Choose from a predefined list of local options. - [String field](https://pagescms.org/docs/configuration/fields/string/): Single-line text input. - [Text field](https://pagescms.org/docs/configuration/fields/text/): Multi-line plain text. - [UUID field](https://pagescms.org/docs/configuration/fields/uuid/): Generate and store a UUID v4. ### Guides - [Deploy on Vercel](https://pagescms.org/docs/guides/installing/vercel/): Deploy Pages CMS on Vercel with PostgreSQL and a GitHub App. - [Self-host](https://pagescms.org/docs/guides/installing/self-host/): Run Pages CMS on your own infrastructure. - [GitHub App](https://pagescms.org/docs/guides/installing/github-app/): What the Pages CMS GitHub App does, how to create it with the helper, and how to configure it manually. - [Upgrading to 2.x](https://pagescms.org/docs/guides/upgrading-to-2/): Upgrade an existing Pages CMS 1.x deployment to 2.x. - [Migrating collaborators](https://pagescms.org/docs/guides/migrating-collaborators/): Export and import collaborators when moving between Pages CMS installs. - [Creating a custom field](https://pagescms.org/docs/guides/creating-custom-field/): Build a custom field and let Pages CMS register it automatically. ### Development - [Authentication](https://pagescms.org/docs/development/authentication/): How Pages CMS chooses between a GitHub user token and a GitHub App installation token. - [Caching](https://pagescms.org/docs/development/caching/): How Pages CMS caches config, collections, media, and permission data. - [Database](https://pagescms.org/docs/development/database/): Migrations, operational scripts, and database maintenance for Pages CMS. - [Fields](https://pagescms.org/docs/development/fields/): How field registration, validation, transforms, and rendering work internally. - [Environment variables](https://pagescms.org/docs/development/environment-variables/): Required and optional environment variables for running Pages CMS.