weathery-0.3.0 is not a library.
weathery
weathery is a terminal weather app with dynamically animated ANSI cityscapes.
It fetches a cityscape from Wikipedia, renders it in ANSI art, fetches the weather from Open Meteo, and adds animations according to the weather and the intensity of the weather.
Demo
Copenhagen (heavy rain)

Installation
Via Cargo
Build from Source
You need Rust installed.
The animations
- Different animation appearance depending on the weather condition
- Rain: blue ANSI blocks that fall down
- Snow: white ANSI blocks that fall down
- Thunderstorm: same blue rain blocks as regular rain but much faster and denser, combined with periodic lightning flashes
- Clear: static image with no particles or effects
- Different speed of droplets depending on the intensity of the weather
- Light intensity: slower spawn rate and slower particle movement
- Moderate intensity: medium spawn rate and speed
- Heavy intensity: rapid spawning and fast particles
- In case of foggy weather, the image is grayscale; otherwise it's colorful (this can be overriden with
--grayscaleand--colorfulflags) - Frame timing stays consistent across all weather types by measuring elapsed time and sleeping just enough to hit the target frame rate, ensuring smooth animation regardless of terminal speed
CLI Options
Simulate weather conditions
# Heavy rain
# Clear
Weather codes:
0 => "☀️ Clear sky",
1 => "🌤 Mainly clear",
2 => "⛅ Partly cloudy",
3 => "☁️ Overcast",
45 => "🌫 Foggy",
48 => "🌫 Depositing rime fog",
51 => "🌧 Light drizzle",
53 => "🌧 Moderate drizzle",
55 => "🌧 Dense drizzle",
61 => "🌧 Slight rain",
63 => "🌧 Moderate rain",
65 => "🌧 Heavy rain",
71 => "❄️ Slight snow",
73 => "❄️ Moderate snow",
75 => "❄️ Heavy snow",
77 => "❄️ Snow grains",
80 => "🌧 Slight rain showers",
81 => "🌧 Moderate rain showers",
82 => "🌧 Violent rain showers",
85 => "❄️ Slight snow showers",
86 => "❄️ Heavy snow showers",
95 => "⛈ Thunderstorm (slight/moderate)",
96 => "⛈ Thunderstorm with slight hail",
99 => "⛈ Thunderstorm with heavy hail",
Force colorful/grayscale image
# Colorful
# Grayscale
Use imperial units
Keyboard controls
q- Quitu- Toggle units
Roadmap
- More key bindings
- Imperial unit
- Auto-detect user's location
- More animation settings
- Installation via other package managers
More coming soon!
License
GPL-3.0-or-later