Getting Started
New to Fjord? This is the path from nothing to a running forge with your code pushed and CI green. It takes a few minutes, most of it happens in the browser, and you can do the whole thing for free on the shared instance before you decide whether to provision your own.
1. Create a Fjord Account
Sign up at fjord.sh. A Fjord Account is the platform
credential you use across the web dashboard, the mobile app,
and the fj CLI; it is separate from any individual Forgejo instance.
After you sign up, Fjord emails you a verification link. Confirm it before you go further: an unverified account can neither join Commons nor create an instance.
2. Choose where to start
The account is free either way. What it gets you is a fork in the road:
| Fjord Commons | Your own instance | |
|---|---|---|
| What it is | One Forgejo everyone shares | A dedicated, single-tenant Forgejo |
| Cost | Free with a Fjord Account | Billed per instance by tier |
| Good for | Trying Forgejo, public projects, small experiments | Work you own, private by default, with its own runners and backups |
Most people should start on Commons: it costs nothing, it is a real Forgejo, and nothing you do there blocks moving to your own instance later. Join it from fjord.sh/commons and skip to step 4. Read Fjord Commons for its limits before you plan around it.
3. Provision your instance
If you want a forge of your own, provision one from the dashboard. Fjord stands
up a sovereign, single-tenant forge for you and marks it ready once it is live
and reachable. See Provisioning for tiers, regions, and
what each state means.
4. Sign in to your forge
Once you have joined Commons, or your instance is ready, sign in with your
Fjord Account:
- Web: open the forge URL, from fjord.sh/commons or from the instance in your dashboard.
- CLI:
fj auth login, then work from any clone. Seefj auth. - Mobile: open Fjord Mobile and pick your Fjord Account.
5. Push a repository
Create a repository in the forge (the web UI, or fj repo create), then push
your code to it like any git remote:
git remote add origin https://<your-forge>/<you>/<repo>.git
git push -u origin mainCommons and your own instance both speak standard Git and the Forgejo API, so
existing git workflows and tooling just work.
6. Run your first CI build
CI runs on Forgejo Actions. Every instance runs on the shared Linux runner pool,
so there is nothing to install, commit a workflow and it runs. On Team and Pro
you can add dedicated runners as a paid add-on when you want capacity that is
yours alone. On Commons, Actions run on public repositories from a shared pool
of minutes, which is enough to watch a build go green but not to plan a pipeline
around; see Fjord Commons. Add .forgejo/workflows/ci.yml:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: https://rasterhub.com/rasterstate/setup-node-action@v1
with:
node-version: '20'
- uses: https://rasterhub.com/rasterstate/setup-pnpm-action@v1
- run: pnpm install --frozen-lockfile
- run: pnpm testFjord Actions are drop-in replacements for the GitHub-hosted actions a Forgejo
runner can’t reach; reference them by full URL so the runner clones them from rasterhub.com instead of github.com. setup-node-action installs Node and setup-pnpm-action installs pnpm at the version declared in your package.json. Neither talks to github.com, and neither needs a PAT.
Push the workflow and watch it from the forge’s Actions tab or fj run list.
What’s next
- Actions overview covers the full bundle: cache, artifacts, language toolchains, Docker, and repo automation.
- Fjord Commons sets out what the free shared instance includes and when you have outgrown it.
- Platform overview shows how instances, tiers, runners, and backups fit together.
- Pages overview shows how to publish a static site, like this one, straight from a workflow.
Running Forgejo yourself instead? The same workflow runs on any Forgejo runner once you have a
runner registered.- Stephen Way (agent)