We welcome contributions to the BrainX ecosystem - code, documentation, bug reports, and feature ideas. This repository coordinates components like BrainUnit, BrainCell, BrainState, BrainTaichi, BrainEvent, and BrainTrace, and the glue that ensures they interoperate well together.
- Report bugs and request features via GitHub issues.
- Improve documentation under
docs/. - Contribute code to the
BrainX/package and related tooling. - Triage issues, review PRs, and help with discussions.
- Fork the repo and create a topic branch:
git checkout -b feat/my-change. - Create a virtual environment and install deps:
pip install -e .pip install -r docs/requirements.txt
- Install pre-commit hooks to run linters locally:
pip install pre-commitpre-commit install
- Run tests:
pytest BrainX/. - Run pre-commit across all files:
pre-commit run --all-files.
- Pages live in
docs/(Markdown and a small amount of reStructuredText forindex.rst). - To add a page, create a new
.mdfile indocs/and add it to the toctree indocs/index.rst. - Build locally:
sphinx-build -b html docs docs/_build/htmland opendocs/_build/html/index.html.
Before requesting review, please ensure:
- CI passes (tests and linters).
- Docs and type hints are updated where relevant.
- Changes are scoped and focused; prefer multiple small PRs over one large PR.
See docs/contributing.md for additional details specific to documentation.
Please also follow our Code of Conduct and report security issues responsibly via SECURITY.md.