|
1 | | -# Contributing |
| 1 | +# Contributing to the AXME Python SDK |
2 | 2 |
|
3 | | -Thank you for your interest in contributing. |
| 3 | +Thank you for your interest in contributing. Every bug fix, test, and |
| 4 | +improvement helps the entire AXME ecosystem. |
4 | 5 |
|
5 | | -## Development Workflow |
| 6 | +AXME is in alpha -- breaking changes may occur. We especially welcome feedback |
| 7 | +on API ergonomics. |
6 | 8 |
|
7 | | -1. Open an issue to discuss changes. |
8 | | -2. Create a branch from main. |
9 | | -3. Add tests for all behavioral changes. |
10 | | -4. Ensure CI passes before opening a PR. |
| 9 | +## Ways to Contribute |
11 | 10 |
|
12 | | -## Pull Request Requirements |
| 11 | +- Fix bugs and improve error messages |
| 12 | +- Add missing API methods |
| 13 | +- Improve type hints and docstrings |
| 14 | +- Add test coverage |
13 | 15 |
|
14 | | -- Clear summary and rationale |
15 | | -- Test coverage for new behavior |
16 | | -- Backward compatibility notes where applicable |
| 16 | +## Reporting Bugs |
| 17 | + |
| 18 | +Open a GitHub Issue at <https://github.com/AxmeAI/axme-sdk-python/issues>. |
| 19 | +Include: |
| 20 | + |
| 21 | +- SDK version and Python version |
| 22 | +- Minimal code to reproduce the problem |
| 23 | +- Full traceback or error output |
| 24 | + |
| 25 | +## Proposing Changes |
| 26 | + |
| 27 | +1. Fork the repository. |
| 28 | +2. Create a branch from `main` (e.g., `fix/improve-error-message`). |
| 29 | +3. Make your changes. |
| 30 | +4. Run tests and linters (see below). |
| 31 | +5. Open a pull request against `main` with a clear description. |
| 32 | + |
| 33 | +## Development Setup |
| 34 | + |
| 35 | +```bash |
| 36 | +python -m venv .venv |
| 37 | +source .venv/bin/activate |
| 38 | +pip install -e ".[dev]" |
| 39 | +``` |
| 40 | + |
| 41 | +## Code Style |
| 42 | + |
| 43 | +This project uses **black** for formatting and **ruff** for linting. |
| 44 | + |
| 45 | +```bash |
| 46 | +black . |
| 47 | +ruff check . |
| 48 | +``` |
| 49 | + |
| 50 | +All code must include type hints. Public functions and classes must have |
| 51 | +docstrings. |
| 52 | + |
| 53 | +## Running Tests |
| 54 | + |
| 55 | +```bash |
| 56 | +pytest |
| 57 | +``` |
| 58 | + |
| 59 | +Tests should pass before you open a PR. If you are adding a new feature or |
| 60 | +fixing a bug, add a test that covers the change. |
| 61 | + |
| 62 | +## Code of Conduct |
| 63 | + |
| 64 | +Be respectful and constructive. We value clear communication and good-faith |
| 65 | +collaboration. |
| 66 | + |
| 67 | +## Contact |
| 68 | + |
| 69 | +Questions or feedback: hello@axme.ai |
0 commit comments