Effortlessly reload Tkinter-based Python applications in the terminal, saving valuable development time.
Installation β’ Usage β’ Features β’ Testing β’ Contributing β’ License
For developers, frequent manual restarts of terminal applications during development can add up quickly, especially in complex Tkinter projects that require regular updates. tkreload
provides a solution to this by automating the reload process, resulting in significant time savings.
Imagine restarting your terminal application 15 times daily, with each reload taking 30 seconds. Thatβs approximately 7.5 minutes daily or about 3 hours per month. tkreload
helps avoid this productivity drain.
tkreload
automates reloading for terminal-based Python applications, designed specifically for Tkinter. By eliminating the need for manual restarts, it streamlines the development process, saving developers valuable time and enhancing productivity.
- Python 3.9+
- pip for dependency management
git clone https://github.com/iamDyeus/tkreload.git
cd tkreload
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
- Install tkreload (in editable mode):
pip install -e.[test]
To run the app with tkreload
, use the following command in your terminal:
tkreload your_app.py
Now, whenever you save changes to your script, tkreload will automatically reload your application.
- Automatic Reloading: Automatically restarts Tkinter apps upon file changes.
- Command-Based Control:
H
: View help commandsR
: Restart the applicationA
: Toggle auto-reloadCtrl + C
: Exit the application
- Real-Time Feedback: Uses
rich
for styled console feedback and progress indicators.
To verify tkreload functionality, follow these steps:
1.Install Testing Dependencies: Make sure all testing libraries are installed as per the requirements.txt file.
2.Run Tests Using Pytest
pytest -v
This will run the test suite and confirm tkreload is working as expected.
Contributions are welcome and greatly appreciated! Here's how you can contribute:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the Apache-2.0 License. See LICENSE
for more information.
- Inspired by the need for efficient development workflows
- Thanks to all contributors and supporters of this project