Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WeatherPredict

WeatherPredict is a cross-platform desktop weather app built with Python. It brings together current conditions, short-term forecasts, historical weather views, air quality data, map links, disaster alerts, and a small world-clock panel in one place.

The project is meant to feel like a practical personal tool: something useful for daily checks, travel planning, or quick weather lookups without needing to open a browser.

Highlights

  • Search for a place and view current weather plus forecast cards
  • Review historical weather over a selected date range
  • Check air quality values with simple summary cards
  • Save a small list of favorite cities for fast access
  • Open a native Windy map window for the selected place
  • See recent disaster alerts from the GDACS feed

Built with

  • Python 3.9+
  • CustomTkinter for the desktop interface
  • Requests for API calls
  • Matplotlib for forecast and history charts
  • PyWebView for the embedded map window

Project structure

  • main.py: app entry point
  • weatherpredict/app.py: main UI and app flow
  • weatherpredict/api.py: API request handling and parsing
  • weatherpredict/models.py: shared data models
  • weatherpredict/storage.py: local JSON storage for favorites and app state
  • weatherpredict/map_viewer.py: map window launcher

Installation

Windows

python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt

macOS / Linux

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Running the app

python main.py

Local data storage

Favorites and the last-selected location are stored in the user profile under:

  • ~/.weatherpredict/favorites.json
  • ~/.weatherpredict/state.json

These paths are handled through Python’s standard library so the app behaves consistently across Windows, macOS, and Linux.

Notes

  • Weather and air-quality data come from Open-Meteo.
  • Disaster alerts are pulled from the GDACS RSS feed.
  • The app surfaces network and API problems through its UI rather than silently failing.

Roadmap

  • improve offline and error handling
  • add a settings screen
  • refine the visual layout and responsiveness
  • package the app for easier installation on each platform

About

WeatherPredict is a cross-platform desktop weather dashboard built with Python. It combines live weather data, forecasts, historical trends, air quality insights, map links, disaster alerts, and a simple world-clock view in one clean desktop app.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages