Self-hosted Git

A Git forge you run yourself. Passkeys, spaces, pull requests.

Nixre is a small Git server with a readable UI. Clone over HTTPS, review diffs, lock public signups. No vendor account.

What it is

Most hosted forges trade convenience for lock-in. Nixre is the opposite: one container, your disk, your domain.

The UI is a React app in front of a Gitness-compatible API. Auth is password or WebAuthn. An admin toggle closes registration so the instance stays invite-only.

A public instance runs at git.nayhein.com. The source is at github.com/Akicou/Nixre.

What you get

The parts people actually use. Nothing else is advertised.

Git over HTTPS
Standard git clone and git push. Smart HTTP, automatic TLS when you put Caddy in front.
Spaces
Organizations that hold repositories and members. Roles go from owner down to viewer.
Pull requests
Branch compare, side-by-side diff, commit list, merge. The usual review loop.
Passkeys
WebAuthn / FIDO2. Touch ID, Face ID, Windows Hello, or a hardware key. Password still works.
Registration lock
An admin switch that returns 403 on signup. Use it when the forge should stay private.
Agent notes
A machine-readable llms.txt covers deploy, DNS, Caddy, and home-router port forwarding.

Install

Docker is the only dependency. Domain and TLS are optional on day one.

  1. 1. Clone

    Get the repo onto the machine that will host it.

  2. 2. Start

    docker compose up -d brings up the API and the UI.

  3. 3. Open it

    Visit http://localhost:3000 and create the first account.

  4. 4. Point a domain later

    A record to the host, forward 80/443, put Caddy in front. Certificates issue themselves.

# clone and start
$ git clone https://github.com/Akicou/Nixre.git
$ cd Nixre
$ docker compose up -d

# check it
$ curl -I http://localhost:3000
HTTP/1.1 200 OK

If an agent is installing this

Read /llms.txt first. It has the Caddyfile, the DNS records, and the Sunrise / DS-Lite notes so you don’t have to invent a deploy path.