get-started

Contributing

How to build, test, and send changes to grain — full guide on GitHub.

grain welcomes patches. Day-to-day contributor setup lives in the repo so it stays next to justfile and CI.

Full guide

CONTRIBUTING.md on GitHub covers:

  • Prerequisites (Go 1.23+, QEMU, just test / just smoke-api)
  • Mock hypervisor for unit tests; live QEMU when you need it
  • just build && just agent-linux before agent deploy / grain act on non-golden images
  • Coding norms and thin SDKs (client/, sdk/ts, sdk/python)
  • PR expectations (tests, docs when user-facing)
  • Supported host platforms: macOS and Linux with hardware virtualization (native Windows is not a host; WSL is Linux + same virt needs)

Quick path

bash
git clone https://github.com/cxdy/grain.git
cd grain
just test && just build
./bin/grain doctor

Docs site source is this docs/ tree. Product overview: grainvm.com.

Community