First off, thank you for considering contributing to FastRouter! It's people like you who make FastRouter such a great tool.
We use uv for dependency management.
-
Clone the repository:
git clone https://github.com/Lftobs/FastRouter.git cd FastRouter -
Install dependencies:
uv sync
-
Install pre-commit hooks (optional but recommended): We use
rufffor linting and formatting.
We use pytest for testing. You can run the tests using the provided Makefile:
make testOr directly via uv:
uv run pytestWe follow the standard Python code style and use ruff for linting and formatting. Before submitting a pull request, please ensure your code passes the linting checks:
uv run ruff check .
uv run ruff format .-
Create a new branch for your feature or bugfix:
git checkout -b feature/your-feature-name
-
Make your changes and ensure they are well-tested.
-
Commit your changes with a descriptive commit message.
-
Push your branch to your fork:
git push origin feature/your-feature-name
-
Open a Pull Request against the
mainbranch of the original repository.
If you're making changes that affect the public API or add new features, please update the documentation in the docs/ directory. You can preview the documentation locally:
uv run mkdocs serveBy contributing to FastRouter, you agree that your contributions will be licensed under the project's MIT License.