Publish to a Git repository — Vercel, Netlify, Astro, Hugo
If your website is built from a code repository — anything deployed by Vercel, Netlify, Cloudflare Pages or DigitalOcean, or built with Astro, Next.js, Hugo or Eleventy — this is the right connection. Proparlab commits each page as a file in your repo. Your existing pipeline sees the commit and deploys it, exactly as it does when a developer pushes. We never touch your hosting. This one is a developer setup. If you have a developer, send them this page: everything they need is in it, and it should take them ten minutes.
- •Your site lives in a GitHub repository and deploys automatically when that repository changes.
- •You can create a token on that repository — you are the owner, or an admin of the organisation that owns it.
- •Someone can make a small change to your site template (step 6). Without it the files arrive but nothing renders them.
- 1
Note the repository and branch
Open your repository on GitHub. The address bar reads
github.com/owner/repo— that pair, owner/repo, is what Proparlab needs. Also note the branch your live site builds from; it is usually main, occasionally master or production. - 2
Create a fine-grained access token on GitHub
On GitHub, click your profile picture (top right) → Settings → scroll to Developer settings at the very bottom of the left menu → Personal access tokens → Fine-grained tokens → Generate new token.
💡 Fine-grained tokens can be limited to one repository. The older "classic" tokens cannot, so use fine-grained. - 3
Give the token access to just this one repository
Fill in the form:
- •Token name — something you will recognise later, like
Proparlab publishing. - •Expiration — pick a date you are comfortable with. When it expires publishing stops until you create a new one, so many people choose the longest option and set a calendar reminder.
- •Repository access — choose Only select repositories, then pick the one repository your site is built from.
- •Permissions → Repository permissions → Contents — set to Read and write. This is the only permission needed. Leave everything else alone.
⚠ Do not grant Administration, Actions or Secrets. Contents alone is enough to commit a file, and anything more is access nobody needs. - •Token name — something you will recognise later, like
- 4
Copy the token
Press Generate token. GitHub shows the token once, starting with
github_pat_. Copy it now — you cannot see it again, and if you lose it you simply generate another. - 5
Add the connection in Proparlab
Open Content Engine → CMS Integration, choose Git repository, and fill in:
- •Repository —
owner/repo, exactly as it appears on GitHub. - •GitHub token — the token you just copied.
- •Branch — the branch your live site builds from, usually
main. - •Folder — where the files should go, for example
content/answers. If the folder does not exist yet, Proparlab creates it with the first page.
- •Repository —
- 6
Make your site render the folder
This is the part that needs a developer, and it is the part people forget. Proparlab commits MDX files with front matter — a block of fields at the top of each file. Your site template has to read that folder and render those fields. Most frameworks already have a content collection doing exactly this for your existing blog; usually it is a matter of pointing it at the new folder, or copying the blog route and changing the path.
💡 Press Test connection in Proparlab and it tells you the exact folder path it will write to, so your developer knows what to point at.⚠ Until this is done, pages will commit successfully and still not appear on your site. If a page seems to have vanished, check the repository first — the file is almost certainly there. - 7
Test it
Press Test connection. Proparlab checks that the repository exists, that the token can commit, and that the branch is real, and tells you which of those failed if any do. Then publish a page from Content Engine → Pages, watch the commit land on GitHub, and watch your normal deploy carry it to the site.
Frequently asked questions
When does the page actually go live?+
When your build finishes, not when Proparlab returns. We commit the file; your pipeline does the rest on its own schedule. For most sites that is one to three minutes.
Does Proparlab open a pull request or commit directly?+
It commits directly to the branch you named. If you would rather review changes first, point it at a branch like `proparlab` and open pull requests from there yourself.
What exactly gets committed?+
One MDX file per page, named after the page slug, inside the folder you chose. The front matter carries the title, description, target question, canonical URL and schema. Nothing outside your chosen folder is ever touched.
Test connection says "can read but not write".+
The token was created without Contents: read and write, or it was scoped to a different repository. Generate a new one and check the Contents permission carefully — this is far and away the most common slip.
We use GitLab or Bitbucket.+
This connection is GitHub only for now. Use the **Webhook** connection instead: Proparlab posts each page to an endpoint you control, signed, and you commit it however you like.
The token expired and publishing stopped.+
Generate a new fine-grained token the same way and paste it into the connection in Proparlab. Nothing else changes, and queued pages publish as soon as it is saved.