How It Works
RepoPress is a visual editor that works directly with your GitHub repository. Instead of copying your content into a separate database, it reads your files from GitHub and commits changes back when you publish. Here’s how that works in practice.
What happens behind the scenes
Three pieces work together to give you a smooth editing experience:
- The editor - The Studio interface you see in your browser. It loads your files, lets you edit them visually, and shows a live preview.
- A real-time backend - Stores your drafts and project settings so you can work without affecting your live site until you are ready to publish.
- Your GitHub repository - The source of truth. RepoPress reads your files from GitHub and commits changes back when you hit publish.
Content Flow
Content moves through four stages as you work with it in RepoPress:
1. Read from Git
When you open a project, RepoPress fetches your repository’s file tree and content from GitHub. The file tree is displayed in the Studio sidebar, and file contents are loaded on demand when you select a file.
2. Edit in Studio
The Studio editor provides a rich editing experience for MDX and Markdown files. You can edit frontmatter fields, write content with a visual toolbar, and preview your changes in real time.
3. Save as a draft
Every edit is automatically saved as a draft. Drafts are separate from your live site - nothing changes in your repository until you explicitly publish. You can work on multiple pages without worrying about incomplete updates.
4. Publish back to GitHub
When you’re ready, hit Publish. RepoPress commits your changes to the branch you chose when setting up the project. You can customize the commit message before publishing.
Automatic setup
When you connect a repository, RepoPress detects your site framework by looking at configuration files like next.config.js, astro.config.mjs, or hugo.toml. Based on what it finds, it suggests the right content folder (for example, content/ or src/content/) so you can start editing right away.
Content workflow
Every document moves through a clear workflow:
- Draft - You are editing. Changes are saved automatically but have not been published yet.
- Review - Optionally share the document with your team for feedback before publishing.
- Approved - Reviewed and ready to go live.
- Published - Committed to your GitHub repository. The changes are live.
- Archived - No longer active, but still in your repository history if you need it.
Ready to set up your repository? Learn about connecting a repository →