Contributing to Rank Torrent Name (RTN)¶
We're thrilled you're considering contributing to RTN! This comprehensive guide will walk you through the process of setting up your development environment, making changes, and submitting your contributions. By participating, you agree to adhere to our community norms and code of conduct.
Getting Started¶
Setting Up Your Development Environment¶
-
Fork and Clone the Repository: Start by forking the RTN repository on GitHub. Then, clone your fork locally:
git clone https://github.com/YOUR_USERNAME/rank-torrent-name.git cd rank-torrent-name
-
Install Poetry: RTN uses Poetry for dependency management. If you haven't already, install Poetry by following the official installation guide. Poetry provides a consistent and isolated environment for development.
-
Install Project Dependencies: With Poetry installed, set up your development environment:
This command creates a virtual environment and installs all necessary dependencies, including development tools.poetry install --with dev
-
Activate the Virtual Environment: To work within the project's virtual environment, run:
poetry shell
Making Changes¶
-
Create a New Branch: Always create a new branch for your changes:
Use a descriptive branch name that reflects the nature of your changes.git switch -c feature/your-feature-name
-
Implement Your Changes: Make your desired changes to the codebase. Be sure to:
- Follow the project's coding style and conventions.
- Write clear, commented code where necessary.
- Update or add tests to cover your changes.
- Update documentation if you're introducing new features or changing existing functionality.
Testing and Quality Assurance¶
Before submitting your changes, ensure they meet our quality standards:
-
Run Tests:
This command runs the project's test suite. All tests should pass before you submit your changes.make test
-
Check Code Style:
This runs our linting tools to ensure your code adheres to our style guidelines.make lint
-
Check Test Coverage:
Aim to maintain or improve the project's test coverage with your changes.make coverage
-
Performance Benchmarking: If your changes might impact performance, run our benchmarks:
Include these results in your pull request description if relevant.make benchmark
Committing Your Changes¶
- Follow Conventional Commits: We use Conventional Commits for clear and standardized commit messages. For example:
feat: add new ranking algorithm for improved accuracy
fix: resolve issue with parsing certain file formats
docs: update installation instructions in README
- Push Your Changes:
Push your branch to your fork on GitHub:
git push origin feature/your-feature-name
Submitting a Pull Request¶
- Go to the RTN GitHub repository.
- Click "Pull requests" and then "New pull request".
- Choose your fork and the branch containing your changes.
- Click "Create pull request".
- Provide a clear title and detailed description of your changes, including:
- The problem you're solving
- Your approach to the solution
- Any potential impacts or considerations
- Benchmark results, if applicable
Getting Help¶
If you need assistance or have questions:
- Open an issue for bugs or feature discussions
- Join our Discord community for real-time chat
- Check out the FAQ for common questions
Thank you for contributing to RTN! Your efforts help make this project better for everyone. We look forward to your contributions and are here to support you throughout the process.