Contributing to CytoScnPy¶
Thank you for your interest in contributing to CytoScnPy!
๐ ๏ธ Prerequisites¶
- Rust: Version 1.70 or higher.
- Cargo: Comes with Rust.
- Python: Version 3.8 or higher.
- Maturin:
pip install maturin
๐ Setup Development Environment¶
- Fork and Clone:
- Create Virtual Environment:
- Install Dependencies & Build:
- Run Tests:
๐ Development Workflow¶
-
Create a Branch:
git checkout -b feature/your-feature -
Make Changes:
-
Run
cargo fmtto format. -
Run
cargo clippyto lint. -
Test:
-
cargo test(Rust unit tests) -
pytest(Python integration tests) -
Submit PR:
- Push to your fork.
- Open a Pull Request on GitHub.
๐ Project Structure¶
cytoscnpy/- Rust core library & analysis engine.python/- Python wrapper & CLI entry point.editors/vscode/- VS Code extension.cytoscnpy-mcp/- MCP server documentation.
๐งช Testing¶
We have a comprehensive test suite.
See tests/README.md for detailed testing guide.