Thank you for your interest in contributing! We welcome contributions from the community.
Fork the repository on GitHub and clone it locally:
git clone https://github.com/ndugram/fastgram-cli.git
cd fastgram# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -e ".[dev]"
# Install pre-commit hooks
pre-commit install- Create a new branch for your feature or bugfix
- Write clean, documented code
- Add tests for your changes
- Ensure all tests pass
- Push your changes to your fork
- Open a Pull Request against the
mainbranch - Fill in the PR template completely
- Link any related issues
- Follow PEP 8 guidelines
- Use type hints for all functions
- Write docstrings for public functions
- Keep lines under 100 characters
# Run linter
ruff check .
# Format code
ruff format .
# Run type checker
mypy src/# Run all tests
pytest
# Run with coverage
pytest --cov=srcFollow the Conventional Commits format:
<type>(<scope>): <description>
body (optional)
footer (optional)
Types:
feat- New featurefix- Bug fixdocs- Documentation changesstyle- Code style changesrefactor- Code refactoringtest- Adding testschore- Maintenance tasks
Example:
feat(ssl): add certificate expiration warning
Add a warning when certificates are about to expire within 30 days.
Closes #123
- Before submitting an issue, search existing issues to avoid duplicates
- Use the issue template when creating a new issue
- Provide as much detail as possible (steps to reproduce, expected vs actual behavior)
If you have questions, feel free to:
- Open a Discussion
- Ask in our community chat
We appreciate your contribution!