Getting started

From an empty dashboard to your first merged pull request in five steps.

You will need a GitHub repository that holds (or will hold) your site's content. Your editors will not need anything beyond an email address.

  1. 1

    Create an account

    Sign up with your email address — PullPress sends you a magic link, no password to remember. The account you create first becomes the admin of your workspace.

  2. 2

    Install the GitHub App on your repo

    From your dashboard, choose “Connect a repository” and install the PullPress GitHub App on the repo that holds your site. You can scope the installation to a single repository — see GitHub App setup for the details and the exact permissions involved.

  3. 3

    Add pullpress.config.yml

    Drop a pullpress.config.yml file in the root of the repository. It tells PullPress what kinds of content exist and which fields editors should see. A minimal config for a blog looks like this:

    version: 1
    media: { folder: public/uploads, public_path: /uploads }
    collections:
      - name: blog
        label: Blog posts
        type: folder
        folder: content/blog
        fields:
          - { name: title, label: Title, type: string, required: true }
          - { name: date,  label: Date,  type: date, default: now }
          - { name: body,  label: Body,  type: markdown }

    Every entry in content/blog becomes an editable post with a title, a date and a Markdown body. The full set of options is covered in the configuration reference.

  4. 4

    Invite editors

    Add your writers by email from the site's settings. They get a magic-link invitation and land straight in the editor — no GitHub account, no repository access, no setup on their side. Choose a role per person: editors draft and submit, publishers can merge their own changes.

  5. 5

    Write, submit, merge

    When an editor saves, PullPress commits to a branch in your repo. When they submit, it opens a pull request. Review the diff on GitHub like any other change — merging it publishes the content through your normal build and deploy.

  6. 6

    Workspaces & plans

    Everything lives inside a workspace (your agency), which carries its own monthly subscription. The plan sets how many sites that workspace can connect: Free = 1, Site = 3, Agency = unlimited. Owners manage the team and the subscription from Workspace settings — upgrade, downgrade or cancel anytime.

    A free account has a single workspace. If you genuinely need several separate workspaces (each its own team and bill), that comes with a paid plan — you can switch between them from the workspace menu.