Contributing

How to contribute code, documentation, and bug reports.

Welcome

Scalaxy is an independent, open-source project. Submit code, documentation, tests, or bug reports through GitHub issues and pull requests.

Development workflow

  1. Fork & clone the repository.
  2. Run the tests before changing anything: make test.
  3. Make a focused change: add tests alongside any behavior change.
  4. Keep the suite green: make test must pass locally.
  5. Open a pull request describing the change and the tests.

What to work on

  • Bugs found while running the 9,018-check suite or the openCypher TCK. The TCK currently passes all 3,898 expanded scenarios; reproduce it with sbcl --script scripts/run-tck.lisp.
  • Maintaining openCypher conformance as new language and temporal cases are added to the TCK.
  • The roadmap in the README: snapshot-based catch-up for lagging replicas, a membership/join protocol, multi-key transactions, and streaming aggregation for whole-graph queries over the large NYC taxi benchmark.
  • Documentation, the web console, and benchmark datasets.

Guidelines

  • Pure ANSI Common Lisp where possible; keep SBCL-specific code behind #+sbcl and out of the core modules.
  • The JSON/HTTP/TCP layers are intentionally dependency-free: please keep them that way.
  • Every public function should have a docstring.
  • Update the relevant docs page on this site when you change behavior.

Code of conduct

Be respectful and constructive. For questions about a change, open an issue or include the relevant context in the pull request.