This guide connects your documentation to GitHub so docs ship through the same workflow as your code. You can use the native **Git Sync** integration (zero-step...
This guide connects your documentation to GitHub so docs ship through the same workflow as your code. You can use the native **Git Sync** integration (zero-step...
This guide connects your documentation to GitHub so docs ship through the same workflow as your code. You can use the native Git Sync integration (zero-step publishing) or a CI pipeline (full control) — both are covered.
Who this is for
Teams that keep docs in a Git repository and want documentation to publish through their normal Git workflow.
Prerequisites
- A Doxbrix project with docs in a Git repo (see docs-as-code workflow).
- A GitHub repository you can administer.
- Git Sync requires a Pro or Business plan.
Option A — Native Git Sync (recommended)
Connect the repo once and Doxbrix handles publishing.
In your project, go to Settings → Project → Git Sync and authorize GitHub. Or run:
dxb git connect --provider github --repo acme/product --branch main --base-path docsPick the branch that should publish (usually main).
Push docs to the tracked branch → they sync to Doxbrix and your live site updates. App edits commit back to the repo automatically.
See Connect GitHub / GitLab for branch, monorepo, and base-path options.
Option B — CI pipeline with GitHub Actions
For full control over when publishing happens, run the CLI in CI.
Step 1 — Create a token
Create a token in Settings → Project → API Tokens and add it to your repo as a secret named DOXBRIX_TOKEN.
Step 2 — Add a workflow
Create .github/workflows/docs.yml:
name: Publish docs
on:
push:
branches: [main]
pull_request:
jobs:
docs:
runs-on: ubuntu-latest
env:
DOXBRIX_TOKEN: ${{ secrets.DOXBRIX_TOKEN }}
DOXBRIX_PROJECT: my-docs
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Install CLI
run: npm install -g @doxbrix/cli
- name: Validate
run: dxb lint --strict
- name: Quality report
run: dxb quality --min 70
- name: Publish (main)
if: github.ref == 'refs/heads/main'
run: dxb push --publish --strictWhat this does
| Trigger | Action |
|---|---|
| Any push or PR | [Lint](/cli/author/lint) (and a [quality](/cli/inspect/search-and-quality) report). |
| Merge to `main` | [Publish](/cli/preview/push-pull-status) to the live site. |
dxb lint --strict fails the build on any warning or error, so broken docs never publish. Add dxb quality --min 70 to surface pages below your quality bar in the logs.Native vs. CI
| Col 1 | Native Git Sync | CI pipeline |
|---|---|---|
| Setup | One-time connect | Write a workflow |
| Publishing | Automatic on push | You control the steps |
| Best for | Most teams | Teams wanting custom gates/steps |
For PR previews, the Git Sync integration is the simplest path; with CI, reviewers can read the change set from dxb diff output.