Ever wish it could rain on your desktop? Now it can, and you can use windows as umbrellas. ☔
RainyDesk is a peaceful desktop rain simulator that overlays semi-realistic pixelated rain on all your monitors. It's transparent, click-through, and never gets in your way — just some nice moist ambiance while you work, game, write, relax, blaze, or just vibe.
It makes it rain on your screen! That's pretty much it! Physics-based raindrops fall across all your monitors, splash when they hit stuff, and sound like actual rain. You can adjust how heavy the rain is, how whooshy the wind is, how everything sounds, and way, waaaay more.
Perfect for...
- Working & vibing in a cozy atmosphere
- Focus assistance when studying or reading
- Relaxing without leaving your desk
- Pretending it's a rainy day when it's not and you're annoyed about it
Sometimes you just want it to rain. I know I sure do. This scratches splashes that itch.
Download the latest installer from Releases, double-click to install, and run it like any other app. No admin required! Windows might show a SmartScreen warning because the app isn't code-signed yet (costs mad ca$h) — just click "More info" then "Run anyway."
Once running, RainyDesk sits in your system tray. Left-click the tray icon to open the Rainscaper panel or right-click to open a small context menu:
- Pause/Resume
- Open Rainscaper
- Reset Panel (in case it gets stuck)
- Volume Presets (there's a bunch)
- Quit RainyDesk
The Rainscaper panel is a little more complicated, but you'll figure it out quickly, I hope. Later on, I'll be adding a Rainscaper Studio for the real rain-heads.
I've included a straightforward guide in the app itself; just click the ? button at the top, or the version number in the bottom right of the panel to find the Help window. That same menu has links to GitHub and Ko-fi, an Autostart toggle, an Update checker, and a Quit button. Auto-updates coming soon!
Grab the latest .exe installer from Releases (check the Assets section at the bottom) and follow the prompts. It installs to your user profile (no admin elevation needed) and adds a Start Menu shortcut.
Want to build from source instead? You'll need Node.js (v18+), Rust (1.77+), and the Tauri v2 prerequisites. Then clone the repo and run these bad boys in a cmd window in the directory:
npm install
npm start- Windows 10/11 (Linux support coming eventually, X11 window manager only)
- An audio device such as headphones, earbuds, or speakers (preferably with surround sound)
- ~70 MB of free storage space
- At least one monitor lmao
Imagine your entire desktop — all your monitors, no matter how weirdly they're laid out — as one big invisible grid, like graph paper. RainyDesk draws a single giant transparent window over everything and makes it rain on that grid. There's also another one behind everything for extra rain (optional but recommended).
The Magic:
- Void Mask: RainyDesk figures out where your monitors aren't and ignores that space. Got gaps between your screens? Those are "walls" that rain can't pass through. If they're right next to each other, though, the water treats it all as one big space to splash around in! 🌊
- Spawn Map: Rain only falls from the top of each monitor, not from empty space. Or the other direction, if you click the Reverse Gravity toggle. 🙃
- Puddles: When rain hits something, it turns into water that spreads out like a real puddle. Well, a real 2D puddle. It's pretty close, at least!
- Waterfalls: Try lining up a bunch of windows and making a little cascade! Also, if your monitors are at different heights, puddles can spill over the edge and cascade down to the lower monitor.
The Feel:
- Drag a window over a puddle? Sploosh! Some water vanishes, some goes flying out sideways!
- Close/move a window with water on it? Splash! The puddle falls and splashes on whatever's below!
- Go fullscreen for a game or video? Ssshh! Rain hides on that screen but keeps falling on your others for maximum coze!
Is coze a word? Cozy but a noun? Whatever, you get it.
The Point: It's like having a tiny rainstorm on your desktop, except you can't get wet. Not from RainyDesk, at least. Don't come running to me if you spill something on yourself.
RainyDesk is in active development and I'm really not rushing it because it's my first big non-website project. The core experience is working pretty well — rain physics simulation, mathematically correct audio synthesis, and a painfully detailed control panel (defaults to easy mode, don't worry).
What Works:
- Cozy pixelated rain falls on all your monitors (including vertical/rotated ones)
- Cool water physics with surface tension, cohesion/adhesion, dripping, pooling, gravity reversal, and all that juicy fluid stuff with oodles of splishysplashies everywhere
- Click-through transparency so the rain never blocks your very important work
- Custom logo/icon! Huge thank you to my friend EHM for making it! 💙👩🎨🧡
- System tray controls for volume & other stuff
- High refresh rate support (15–360 Hz) with adjustable FPS limiter
- Window detection so that rain flows around windows, hides on maximized/fullscreen screens, and muffles audio (all toggleable)
- Rainscaper control panel with 12 default + 12 custom theme slots (with a theme editor!), 5 tabs, oscillator knobs for natural drift, performance presets, and way too many sliders
- Procedural audio synthesis — raindrop impacts, wind layers, background rain sheet, and looping surface textures (5 for now, more later: generic, concrete, forest, metal, umbrella) with tunable pitch and per-mode settings
- Thunder! ⛈ Relatively decent procedural storm simulation with storminess, distance, and environment controls
- Audio Channels with a 3-tier performance slider (Lite/Standard/Full) so lower-end hardware can still enjoy rain without the CPU sweating
- Background rain sheets are atmospheric layers behind your windows; really sells the effect!
- Configurable rendering with 4 render scale tiers, 4 grid scale tiers, splash size chain-linking, and a gentle fade-in on startup
- Pick any rain color you want, or turn on Gay Mode for rainbow cycling 🏳️🌈
- Matrix Mode (screen-accurate) with a sweet synth tune that the rain plays automagically 😎
- Start with Windows toggle, monitor hot-swap detection, and a built-in help guide
- Per-mode settings — Rain Mode and Matrix Mode save independent
.rainconfigurations
What's Coming:
- Rainscape preset system to save and load your perfect rainy day vibes as
.rainfiles likeTinRoof.rain&Forest.rain - Singing wind with Aeolian tones, formant selection, & synthesized psithurism (Google it lol)
- 3D spatial audio in the works! Full 5.1/7.1 surround sound support coming soon (like Dolby Atmos for Headphones)
- Non-musical Matrix mode for when you just want quiet digital rain without the synth tune
- Liquid glass panel UI (with an emphasis on the liquid) with proper refraction & distortion
- More visual effects (adjustable trails, droplet styles, probably other stuff)
- Linux support (I pinkie promise!) and maybe MacOS later if my Mac Mini behaves
- Snow? 🌨👀
RainyDesk is built with Tauri (Rust backend + WebView2), Pixi.js v8 rendering, & Tone.js audio synthesis... and a whole lot of gaffer's tape.
Architecture:
- One mega-overlay window spans your entire virtual desktop (all monitors, even weird setups)
- Another mega-background window renders atmospheric rain behind everything
- Void mask treats gaps between/around monitors as solid walls; calculated automatically on start
- Hybrid physics: Lagrangian particles (rain) + Eulerian grid (puddles)
- Cellular automata for natural water flow (Noita-style!)
- Audio performance tiers (Lite/Standard/Full) scale voice counts and module activation for different hardware
- Spatial audio: HRTF binaural positioning wired up (temporarily disabled while being tweaked & tuned; proper 5.1/7.1 coming later, I swear)
- The
.rainfiles are just fancy.jsonfiles ssshh don't tell anyone :)
RainyDesk is currently source-available under the Business Source License 1.1 (BSL-1.1). That means you are welcome to use, tinker with, and modify RainyDesk for personal, educational, and non-commercial purposes. I've chosen BSL so I can keep the project freely available while preventing third parties from repackaging and selling it as a commercial product without permission. Don't want that, now do we?
Change Date: 2030-02-05 — on or after this date RainyDesk will automatically be relicensed under the MIT License, making it fully permissive and open-source.
If you'd like to use RainyDesk commercially before the Change Date, which is my birthday, (for example to bundle or sell it), please contact me to discuss a commercial license. I may be feeling magnanimous.
None of this wacky wetness would have been possible without the hard work and research of all the folks who made these libraries, crafted these typefaces, and wrote the research papers with excruciatingly accurate titles I used for the raindrop audio synthesis:
Truly could not have made this were it not for these. Holy heck, what a huge help! Thanks y'all! ♥
- Tauri (v2) — MIT License — Desktop app framework
- Pixi.js (v8) — MIT License — GPU-accelerated rendering
- Tone.js (v15.1.22) — MIT License — Real-time audio synthesis
- pixi-filters — MIT License — GlowFilter for Matrix Mode
- marked — MIT License — Markdown rendering for the help window
- Convergence — SIL OFL 1.1 — by Nicolas Silva & John Vargas Beltran
- Departure Mono (v1.500) — SIL OFL 1.1 — by Helena Zhang
- JetBrains Mono (v2.305) — SIL OFL 1.1 — by Philipp Nurullin & Konstantin Bulenkov
- Nimbus Mono PS (v1.00) — SIL OFL 1.1 — by URW++ Design & Development
- Matrix Code (v2.0) — MIT License — by Rezmason
- Computational Real-Time Sound Synthesis of Rain (2003) — Andreas Zita
- On the Measurement and Prediction of Rainfall Noise (2021) — G. Schmid et al.
- Procedural Modeling of Interactive Sound Sources in Virtual Reality (2023) — Federico Avanzini
- Rainfall Observation Leveraging Raindrop Sounds Acquired Using Waterproof Enclosure (2024) — Seunghyun Hwang et al.
- A Theoretical Study on Drop Impact Sound and Rain Noise (1991) — Y. P. Guo & J. E. Ffowcs Williams
- Advances in Thunder Sound Synthesis (2022) — E. Fineberg, J. Walters, & J. Reiss
- Note: Thunder synthesis techniques adapted from the thunder-synthesis project.
RainyDesk was made with love (and a little Claude Code help) by Sam Atwood of The King's Busketeers!
If you jive with the project, tips and responsible Ko-fi donations are hugely appreciated!
Please don't submit an issue if rainwater starts pouring out of your USB ports, that's unintended behavior.