Contributing
We welcome contributions of all sizes! Please read this guide before opening a PR.
Bug Reports
Section titled “Bug Reports”- Search existing issues first.
- Include: OS, Rust version (
rustc --version), EdgeCrab version (edgecrab --version), and reproduction steps. - For security vulnerabilities, email
security@elitizon.com— do not open a public issue.
Development Setup
Section titled “Development Setup”git clone https://github.com/raphaelmansuy/edgecrabcd edgecrabcargo build # Build all cratescargo test # Run all testscargo clippy -- -D warningscargo fmt --allSDK Development
Section titled “SDK Development”Python SDK
Section titled “Python SDK”cd sdks/pythonpip install -e ".[dev]"pytest tests/ -vNode.js SDK
Section titled “Node.js SDK”cd sdks/nodenpm cinpm run buildnpm testCoding Guidelines
Section titled “Coding Guidelines”- Follow
cargo fmtconventions (enforced by CI). - Zero clippy warnings — run
cargo clippy -- -D warningslocally. - Every new public API must have a doc comment.
- New tools in
edgecrab-toolsmust pass throughCommandScannerbefore execution. - Security-sensitive changes require an entry in
CHANGELOG.md.
Pull Requests
Section titled “Pull Requests”- Fork the repo and create a branch:
git checkout -b feat/my-feature. - Write tests for new functionality.
- Ensure
cargo testandcargo clippy -- -D warningsboth pass. - Open a PR against
mainwith a clear title and description.
License
Section titled “License”By contributing, you agree that your contributions will be licensed under Apache 2.0.