Save YouTube videos and MP3s to disk. Play them when the internet is down.

Paste a URL. A video, or a whole YouTube playlist: you pick what to keep before anything downloads. It queues, downloads into your library folder, and survives a restart.

Add a folder of MP3s. Music you already own goes in the same library.

Press play. Three small windows that snap together. If you remember Winamp, you already know how this works.
A blue panel titled Windows protected your PC appears. That is SmartScreen, and it says the same thing about every program it has not seen before.
Click More info, then Run anyway. It asks once.
Why: hurricane-party is a one-person project and the exe is not code-signed. A signing certificate costs a few hundred dollars a year and would only make this panel go away. The source is public if you want to check what you are running.
The zip is 125 MB for a 10 MB app because yt-dlp, ffmpeg and a JavaScript runtime ride along inside it. They do the downloading and the MP3 conversion; hurricane-party is what you look at.
A window of its own, opened from the library. Paste everything you want before the weather turns — videos, whole playlists, one link per line. It reads each line, says what your library already has, and adds up what the rest comes to in video and in audio side by side, against the room left on your drive.
One press queues all of it. A download that fails because the connection went waits a minute and tries again instead of giving up, so a batch started while the power is flickering finishes on its own. Closing the window stops nothing.
A line that isn't a link, a video that has gone private, a list that won't read: each says so on its own line and holds nothing else up.

Files dropped into a library folder by hand show up about two seconds later, with no rescan. Downloads go wherever you point them, and a download whose folder is missing waits for it rather than landing somewhere else.

Transport, time, seek, volume. The analyser runs on a weather radar ramp: green through yellow to red, peaking magenta. Click it for an oscilloscope.
Ten bands, a preamp, and a trim that keeps a boosted mix from clipping. A lamp lights when it does. Save the curve as your own preset, or import presets from Winamp .eqf files.
Resizes by the corner grip. Shuffle and repeat live in its bar. The lit seam between windows is a bond: drag it to resize both neighbours, double-click to break it.

Double-click Main's title bar and it collapses to a fourteen-pixel bar that stays on top. Title, transport, time. This is the one you live in while working in another app.
.wsz skins load and dress all three windows. Most work. If a skin uses something this player doesn't have, it says so instead of drawing it wrong.
Pick Purricane beside the skin in the library and every window turns over at once. It comes with a skin of its own: soft rounded chrome in floss pink, milk white, mint, periwinkle and butter, with words in Comic Sans.
A mandala sits in the round badge on Main. Bass pushes it out, the highs scatter dots at the rim, a beat makes it bloom, and its colour drifts once around the palette every minute and a half. 6 SEG and 8 SEG cut it into six or eight.
It turns slowly and never flashes more than a few times a second, whatever the tempo. CALM holds it still and lets it answer the music in size only. Windows' reduced-motion setting does the same.
The player listens on a named pipe. Anything on the machine can ask what is playing, skip, seek, or read the analyser as a stream of frames, which is enough to drive an LED rig from the bass. The protocol is unstable until v1.0. docs/control-api.md has the handshake and the message table, and the repo's tools folder has two PowerShell clients to start from.