π€ Contributing to TFTP Router Flasher
Thank you for your interest in contributing! Whether you're fixing bugs, improving documentation, testing on new hardware, or adding features β your help is welcome and appreciated.
π¦ Project Scope
TFTP Router Flasher is a cross-platform CLI tool for flashing firmware to routers via TFTP, especially in recovery mode. It aims to be:
- Lightweight and dependency-minimal
- Compatible with Linux and macOS
- Easy to install and use
- Safe and transparent for users
π§° How to Contribute
π Report Bugs
- Search issues first to avoid duplicates
- Include:
- OS and Python version
- Router model (if relevant)
- Steps to reproduce
- Logs or error messages
β¨ Suggest Features
- Open an issue with a clear description
- Explain the use case and why itβs valuable
- Bonus: suggest how it could be implemented
π οΈ Submit Code
- Fork the repo
- Create a new branch (
feature/my-featureorfix/my-bug) - Make your changes
- Run tests (if applicable)
- Submit a pull request with a clear summary
π Improve Docs
- Typos, formatting, or clarity improvements are always welcome
- You can edit
README.md,CONTRIBUTING.md, or add new docs under/docs
π§ͺ Development Setup
git clone https://github.com/vr-ski/tftp-router-flasher.git
cd tftp-router-flasher
python -m venv .venv
source .venv/bin/activate
pip install -e .
To run the CLI:
tftp-router-flasher --help
To run tests (if available):
pytest tests/
π§Ό Code Style
- Follow PEP8
- Use 4-space indentation
- Keep functions small and focused
- Prefer logging over print statements
- Use descriptive variable and function names
π License and Attribution
By contributing, you agree that your code will be released under the GPL-2.0 License. This project is inspired by arescue by Joonas Nissinen, originally licensed under GPL-2.0.
π Thank You
Your contributions help keep this project alive and useful. If youβve tested this tool with a new router model or platform, please share your experience!