Retro Floppy Disk Spotify Playlist Loader
Edit: After an overwhelming demand (well, more than one person), I’m now adding a Winamp-style equaliser to Floppify. Clearly, it wasn’t quite retro enough. Stay tuned for some serious 90s throwback action.
(No, I won't do Milkdrop Vis- as much as I'd love to!!)
Growing up in the '90s, I have vivid memories of 3.5" floppy disks. They were the go-to storage format of the time, though far too small to store actual music files (only 1.44MB per disk!). Back then, we relied on cassette tapes and later CDs for our music—though I can't even recall the last time I used a CD.
As a fan of retro tech, I recently felt nostalgic and decided to build a "sleeper" PC. For those unfamiliar, a sleeper PC is a powerful, modern machine hidden inside the case of an old, unassuming PC from the late '90s or early 2000s. Of course, I included a floppy drive in the build for authenticity—but, unsurprisingly, it's not very practical. https://github.com/jakemorgangit/timemachine/
Then came a flash of inspiration: why not repurpose those old floppy disks? What if I could load Spotify playlists from these disks? This would give me a tactile, retro way of interacting with music, bringing back the joy of tangible media. And so, floppify was born.
Floppify is a project that lets you use floppy disks to load Spotify playlists. It’s a fun, retro-tech way to interact with modern streaming services by using an old-fashioned medium.
(Part of joy of this project is finding and printing your own labels / disk art!)
Run the script.
It will authenticate against your Spotify credentials (a browser window will load where you'll need to authorise the app).
From there, you'll be given a list of the devices you use with your spotify account - make a note of the ID of the device you want to use and pump that into the .env file.
Now you've chosen a preferred device, run the script again.
A GUI will launch and the main loop will poll for the insertion of a disk.
These disks must contain a playlist.txt file which contains link(s) to a spotify playlist/album.
If this disk has never been loaded (or read by the program before) a uniq ID will be generated and stored in the root of the floppy disk under a file called unique_id.txt.
This ID is stored internally and used to ensure that the main loop doesn't pick up a new playlist everytime it polls for a new disk (which is every 5 seconds) - this fixed one fo the first bugs!
On detection of an inserted disk, the program will stream the playlist from spotify (or, if there a multiple playlist links, it will pick one at random).
If a disk is ejected, the music will stop the next time the main loop loops (within 5 seconds) and the console and GUI will be updated to say that nothing is available.
Put in another disk and process repeats. It's all pretty simple :)
I attempted to style it in honour of the iconic and recently "open sourced" Winamp :D https://github.com/WinampDesktop/winamp
With Disk
No Disk
I should mention that the gui isn't actually required, the entire thing can run silently, but I thought why not !
Spotify Developer Setup
https://developer.spotify.com/
You’ll need a Spotify Developer account to create a new app and generate a client ID and secret. This will allow the script to authenticate with Spotify.
Make sure your redirect URL is set to http://localhost:8888/callback

The script checks your LOCAL_DEVICE_ID on the first run. If it’s not already set, you'll need to select the device where you want Spotify to play (e.g., your computer, speakers, or another connected device).
By default, the script uses drive A: (the traditional floppy drive letter). If you’re using another drive, like a USB floppy emulator or USB drive, simply change the drive letter in the `.env file.
Create a file called playlist.txt on the floppy disk. In this file, paste links to the Spotify playlists or albums you want, one per line. You can have as many playlists as you like on a single floppy, so for instance, you could store an artist’s entire discography on one disk!
With everything set up, insert your floppy, launch the app, and let the retro magic happen!
- Spotify Developer Account
- Floppy Drive (real or emulated/USB stick also works)
- Floppy Disks (the more, the merrier!)
- Python 3.x and dependencies (see requirements.txt)
Clone the repository:
git clone https://github.com/jakemorgangit/floppify.git
cd floppify
Install dependencies:
pip install -r requirements.txt
Font This project uses the LED Dot-Matrix font available at DaFont: https://www.dafont.com/led-dot-matrix.font
You'll need to download the TTF file and install it - alternatively, use a different font (courier for example should work out of the box) :)
Then...
Set up your Spotify credentials.
Create a new app on the Spotify Developer Dashboard.
Obtain the CLIENT_ID and CLIENT_SECRET, and configure them in the .env file.
Insert a floppy disk and create a playlist.txt file containing Spotify playlist URLs.
Run the app and enjoy your FLOPPIFY retro playlist loader!
python floppify.py
If you have ideas to enhance floppify, feel free to submit a pull request or open an issue!











