Development
Requirements
- Go 1.26.3+
- Docker for integration tests
taskfor optional development workflows- Bun 1.3.13 for the documentation site
Common Commands
go test ./...
go build ./...
go fmt ./...
go vet ./...
go run ./cmd
Taskfile Helpers
task tools
task build
task build:pg
task build:sqlite
task run:sqlite
task live
task debug
Docker
Build locally:
docker build -t orisun:local .
Run the local Docker smoke test:
./scripts/test_docker.sh
Benchmarks
go test -bench=. -benchtime=3s ./cmd/benchmark_test.go
go test -run='^$' -bench=BenchmarkConsistencyCheck -benchtime=5s ./postgres/...
./collect_benchmarks.sh
Documentation
Run the documentation site locally:
cd docs
bun install
bun run start
Build the static site:
cd docs
bun run build
The GitHub Pages workflow runs the same frozen install and build:
bun install --frozen-lockfile
bun run build