Thank you for your interest in contributing to AlphaSwarm! This guide focuses on contributions to the Tools and Services components of the project.
Currently, we are accepting contributions in the following areas:
-
Tools: Located in
alphaswarm/tools/
, see this guide for more details- Utility functions and classes
- Metrics collection and analysis
- Helper tools and scripts
-
Services: Located in
alphaswarm/services/
, see this guide for more details- Service implementations
- Client libraries
- Service utilities
- Fork the repository
- Create a new branch for your feature or fix
- Make your changes
- Write or update tests as needed
- Submit a pull request
- Decimal are used to represent floating point token value in the codebase.
- int are used to represent integer token value in base units (wei for Eth, atomic for Sol, ...).
- float must be avoided for any token value representation because of there lack of precision.
- Follow PEP 8 style guidelines
- Use meaningful variable and function names
- Add docstrings to functions and classes
- Include type hints where appropriate
- Write unit tests for new functionality
- Ensure all tests pass before submitting
- Include integration tests for services
- Update documentation if needed
- Add tests for new functionality
- Ensure the test suite passes
- Update the
README.md
and.env.example
if necessary - If you're introducing a new package, create an
__init__.py
file with appropriate imports - Submit the pull request with a clear description of changes
- The pull request should pass all linters and static code checks, see
- The pull request needs to be reviewed and accepted by the core team
If you have questions or need assistance, please:
- Check existing issues
- Create a new issue with a clear description
- Tag it appropriately
Thank you for contributing to AlphaSwarm!