Thanks for your interest in contributing to instgraph! This guide covers everything you need to get started.
- Go 1.21+
# Unit tests
make test
# Benchmarks
make bench
# Linting (requires golangci-lint)
make lint- Standard Go conventions. Run
gofmton all code. - Lint checks run via
golangci-lint.
- Fork the repository and create a feature branch from
master. - Write tests for any new functionality.
- Run
make testand ensure all tests pass. - Open a PR against
masterwith a clear description of the change. - A maintainer will review and merge once CI is green.
cmd/instgraph/ -- CLI: codegen tool
cmd/instgraph-server/ -- server: OTLP ingest + Cypher + NL query
pkg/
schema/ -- JSON schema parser + append-only lock
codegen/ -- Go interface + OTLP schema generation
graph/ -- core in-memory property graph engine
cypher/ -- OpenCypher parser + executor
persist/ -- Pebble WAL + snapshots
ingest/ -- OTLP log receiver
nlquery/ -- natural language to Cypher (Claude API)
examples/cricket/ -- cricket analytics showcase
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.