Skip to main content

Graupel

A customizable desktop meteogram application for alpine weather forecasting.

PyPI Python License Open-Meteo Maptoolkit MapLibre OpenStreetMap

Graupel creates detailed, customizable meteograms by combining multiple numerical weather prediction models into continuous forecast chains.

Designed with alpine weather in mind, it provides detailed views of temperature, precipitation, wind, cloud structure, and other meteorological parameters while allowing different forecast models to be used for short-, medium-, and long-range forecasts.

Weather forecasts are provided through Open-Meteo. Interactive maps use Maptoolkit and MapLibre with map data from OpenStreetMap.

Features

  • Custom model chains for short-, medium-, and long-range forecasts
  • Multiple numerical weather prediction models
  • Detailed alpine meteograms
  • Vertical cloud profile visualization
  • Temperature, precipitation, wind, cloud, CAPE/CIN and other weather parameters
  • Interactive time-range zoom
  • Configurable locations and forecast presets
  • Interactive maps
  • Local desktop application
  • Local configuration and forecast storage

Graupel

Graupel is a desktop application to visualize freely available weather data from OpenMeteo as a meteogram, e.g. a graph with a timeframe on the x axis and weather-realted quantities such as temperature or precipitation on the y axis.

Graupel lets you select weather models of your choice, if available through the api. You can then choose the best local model for your forecast area.

It is free to use and open source. Project-authored React frontend code is licensed under the Mozilla Public License 2.0 (MPL-2.0). All other project-owned material—including Python code and icons—is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later). Bundled third-party components retain their respective licenses. See LICENSE for the exact file-level boundary and complete notices.

Installation

Windows

No clue what uv is

If you do not know what uv is, it is probably not installed. Copy the following command:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv tool install graupel

Now open a powershell by pressing WinKey + R typing powershell and hitting Enter. Paste the copied command and execute it with a press of Enter.

After the installation of uv, start Graupel by typing

graupel

and hitting Enter. A startmenu item will be automatically created on the first run.

uv is already installed

Install graupel via

uv tool install graupel

Afterwards you can run Graupel from the terminal via

graupel

Linux

Install uv, a package manager for python, via your distros package manager. Install graupel via

uv tool install graupel

Afterwards you can run Graupel from the terminal via

graupel

Mac OS X

Install uv via homebrew:

brew install uv

or directly, if you do not have homebrew installed:

curl -LsSf https://astral.sh/uv/install.sh | sh

Restart your terminal and install Graupel:

uv tool install graupel

Afterwards you can run Graupel from the terminal via

graupel

Usage

Introduction to Weather models

Weather models are forecast algorithms that ingest a lot of sensor data and predict the configuration of the atmosphere within the forecast horizon.

Weather models have different spatial resolution (dividing the forecast area into smaller or larger rectangles), which makes a difference on how detailed geographic features, especially mountains, influence the weather physics within the model.

A higher resolution usually means more computing effort, why usually higher resolution models have lower forecast horizion. Also the atmosphere is a "chaotic" system, meaning small changes in state can have a butterfly effect the further you go in the prediction, therefore falsely assumed precision in longer forecast models may not value the outcome

Graupel allows you to "stack" weather models on top of each other, e.g. in a chain of models starting with a high resolution, but short horizon model, followed by one ore more less precise but longer horizon models. You can therefore create meteograms with a very long forecast horizon.

The longest models have a horizon of more than 14 days, giving you an effective visual forecast of two weeks. Be aware though, that usually a prediction of longer than a week can have a big uncertainty and should merely be seen as a trend.

Overview

The app has two panes between which you can switch:

  1. meteo, showing the actual meteogram
  2. config, configure model chains for weather data

A configuration holds two model chains (e.g. a stack of models from smaller to bigger horizon, see Introduction to weather models), one for the basic meteo data (temperature, precipitation, wind) and one for a detailed height profile of clouds (because the best models for meteo data do not always offer detailed cloud profile).

You select a configuration and a location and the program will construct a meteogram from the weather data received from OpenMeteo.

Meteogram pane

Header

In the header you have

  1. a configuration selectbox in the lower left corner
  2. a location selector in the right header part

Click inside the location selector's textbox and begin typing the name of a place. An autocomplete will show you known places starting with your typing.

Alternatively you can click on the map to open it in fullscreen an select a location by clicking on the map.

After selecting a location you will see its coordinates and height as meters above see level below the textbox

You can change the configuration, and therefore the models which will supply the data for your meteogram, by selecting one in the dropdown.

Selecting a new location or configuration will automatically reload the meteogram. You can force it to reload by clicking the refresh button next to the textbox.

Body

Below the header you will find

  1. The model chain for basic meteo data
  2. The model chain for the cloud profile
  3. The meteogram itself

Share forecast

On Windows, make a screenshot of the meteogram area via the snipping tool or greenshot and copy it into email or messenger app.

On Linux, the easiest way depends on your desktop environment:

  • GNOME: press Shift + Print Screen and drag over the area you want. On newer GNOME versions, just Print Screen opens the screenshot UI where you can choose a rectangular region.
  • KDE Plasma: press Meta + Shift + S to select a rectangular region with Spectacle.
  • XFCE: usually Shift + Print Screen for selecting a region.

On macOS, select part of the screen with:

⌘ Command + ⇧ Shift + 4

Then drag over the area you want to capture. Press Esc to cancel.

Release files for graupel 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for graupel 0.1.0
File Size Uploaded
graupel-0.1.0.tar.gz 3.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for graupel 0.1.0
File Interpreter ABI Platform
graupel-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 5.9 MB

Release files / graupel-0.1.0.tar.gz

Download URL graupel-0.1.0.tar.gz
Size 3.5 MB
Tags Source
SHA-256 checksum
How to use checksums
fcaa9af871e8664a2059c5c161d3d0bf5732679b40232e7632ea17d983dcd2ba
BLAKE2b-256 checksum
How to use checksums
59f1e2f3fcb8af26aba4b5d707dbc4948333d9f8a871311cc7d691899ec083a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / graupel-0.1.0-py3-none-any.whl

Download URL graupel-0.1.0-py3-none-any.whl
Size 2.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
bec763c3ab361549fd1210bf0c6ef7535c4980c4f0f8ba4d10ddca9368ff5177
BLAKE2b-256 checksum
How to use checksums
f44c57cbe86d88726ed00d78d6c536332759f4b21c8938dbea1e1ed2df33e73a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page