Repository navigation
Contributing
github-actions[bot] edited this page Sep 19, 2026
·
2 revisions
- Go 1.26+
- Node 20+
# backend
go run ./cmd/shortr
# frontend, in a second terminal (proxies /api and /auth to :8080)
cd web && npm install && npm run devgo vet ./...
go test ./... -race
cd web && npm run build # type-checks, then builds
cd web && npm run lintCI runs the same checks, plus a Docker build, on every push and pull request.
- Fork the repo and create a branch.
- Make your change and add tests where it makes sense.
- Make sure the checks above pass.
- Open a pull request that explains why the change is needed.
Please don't open public issues for security problems; see Security instead.
Pushing a version tag starts the release workflow. It builds the frontend,
cross-compiles the binaries for Linux, macOS and Windows, attaches them and
a SHA256SUMS file to a GitHub release, and publishes a multi-arch Docker
image to GHCR.
git tag v1.2.3
git push origin v1.2.3