This is the template of Weather Forecast App. You can train your Python 3 developer skills by adding new functionalities. The list of ideas can be found below.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
You will need:
- Python 3 with Tk
- Pillow library
When using PyCharm environment follow the instructions and install Pillow library.
You can also use pip with virtualenv:
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
Run this app with Python 3:
python3 main.py
- Unittest your app (use TDD with unittest or pytest, mock, tox).
- Use web service to receive list of supported cities and weather data (eg. https://openweathermap.org/).
- Remember to catch errors and notify user about them in a nice way.
- Use local storage to cache the data (eg. text file, database like SQLite).
- Use threads to download weather forecast data and prevert GUI freezing.
- Add forecast for next days.
- Add tray icon.
- Notify user about bad weather conditions (eg. via Facebook, Twitter, SMS or simple desktop notification).
- Prepare an installer for your app with Distutils (setup.py).
- Prepare standalone version for Windows users (eg. py2exe, PyInstaller).
- Adam Chyła - Initial work - chyla.org
This project is licensed under the MIT License - see the LICENSE file for details