Thank you for your interest in contributing to the AXL Protocol.
-
Fork and clone the repository:
git clone https://github.com/axlprotocol/axl-core.git cd axl-core -
Install in development mode:
pip install -e ".[dev]" -
Run the test suite:
pytest
-
Run the linter:
ruff check src/ tests/
- Create a feature branch from
main. - Write tests for any new functionality.
- Ensure all tests pass and
ruff checkreports no issues. - Keep commits focused and write clear commit messages.
- Open a PR against
mainwith a clear description of the change. - Reference any related issues.
- PRs require passing CI checks before merge.
- Follow PEP 8, enforced by
ruff. - Line length limit: 100 characters.
- Use type annotations for all public functions.
- Zero external dependencies for the core library.
Open an issue on GitHub with:
- A minimal reproducible example (AXL packet string + expected vs. actual behavior).
- Python version and OS.
Please report security vulnerabilities privately. See SECURITY.md for details.
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.