Introducing "ClassiPod" โ Your Timeless Audio Experience
Step back in time with ClassiPod, a local music player app designed to capture the nostalgic essence of the iconic iPod Classic. Immerse yourself in the familiar click wheel interface and relive the joy of navigating your music library with a touch of retro charm.
๐งญ Intuitive Navigation: Navigate through your music library effortlessly using the virtual click wheel. Scroll, click, and feel the tactile response as you rediscover the joy of selecting your favorite tracks with the same ease as the original iPod.
๐๏ธ Local Music Library: ClassiPod is focused on your locally stored music files, ensuring that your personal music collection takes center stage. Organize your tracks, albums, and playlists just like you did on your trusty iPod Classic.
๐๏ธ Customizable Themes: Personalize your ClassiPod experience with the option of silver or grey device frame. Choose from the two different color schemes to tailor the app's appearance to your unique style.
๐ผ๏ธ Cover Art Display: Immerse yourself in your music by appreciating album artwork on the vibrant display. ClassiPod pays homage to the visual appeal of classic iPods by showcasing your favorite album covers in a retro-inspired format.
๐ผ No Frills, Just Music: ClassiPod stays true to the essence of a music player โ no distractions, no unnecessary features. Focus solely on the joy of listening to your favorite tunes without the complexities of a modern streaming service.
๐ง Offline Listening: Enjoy your music without relying on an internet connection. ClassiPod is perfect for those moments when you want to disconnect and savor the tunes stored locally on your device.
Relive the magic of the iPod Classic with ClassiPod โ where timeless design meets the convenience of today. Download now and embark on a journey down memory lane with your music in the palm of your hand.
If you like what you see, please โญ the repo.
- ๐๏ธ Plays MP3, WAV, FLAC, M4A, MP4, Ogg, Opus, AAC, AIFF, APE, and MOV audio
- ๐ Discover music through Android MediaStore, or select a parent music folder on iOS, macOS, Windows, and Linux; nested folders are scanned automatically
- ๐จ Multiple Ipod Classic Device Colors (Silver and Black)
- ๐ผ๏ธ Displays the Music Metadata (Album Art, Artist Names)
- โฉ Ability to seek forward and backwards on a audio file (By Long Pressing the seek forward/backwards buttons)
- โฎ๏ธ Ability to go to previous and next track in the playlist
- ๐ฑ Ipod Classic User Interface
- ๐๏ธ Cover Flow View
- ๐ก Click Wheel with Scrollable Rotation Enabled
- ๐ฟ Now Playing Screen with current music progress displayed
- ๐ถ Songs Screen with all the possible songs from the selected directory
- ๐งโ๐ค Ability to Filter and Select From a Particular Artist, Album or Genre
- ๐ฒ Responsive Design For all Different Types of Screen Sizes
- ๐ Displays the current device battery level and charging status on the status bar
- ๐ง Background Playback with Notification Control
- ๐ Shuffle Songs Feature
- โฐ Loop Songs Feature (Loop one song or an entire playlist)
- ๐ Click Wheel Sounds
- ๐ณ Vibration when clicking buttons and scrolling through the scroll wheel
- ๐ In App Volume Control
- ๐ช Reflective Cover Art
- โน๏ธ About Screen
- ๐ Multi Language Support (Over 197 Languages Supported)
- ๐ Touch Screen Support
- ๐บ Split Screen View (6th and 7th Gen iPod Classic)
- ๏ฟฝ๏ฟฝ Ability to search songs, artists, playlists and albums
- โฌ๏ธ Caching Metadata of the songs for faster boot up times
- ๐ Ability to Create and Store Custom User Created Playlists
- ๐ App Usage Tutorial
- โญ Song Rating Feature
- ๐ Displays embedded lyrics in Now Playing
ClassiPod imports a format when its metadata can be read and at least one configured playback backend can play it. Playback availability therefore varies by platform:
| Format | Extensions | Expected playback |
|---|---|---|
| MP3 | .mp3 |
Android, iOS, Windows, Linux, web |
| PCM WAV | .wav |
Android, iOS, Windows, Linux, web |
| FLAC | .flac |
Android, iOS, Windows, Linux, major browsers |
| AAC in MP4 | .m4a, .mp4 |
Android, iOS, Windows, Linux, major browsers |
| Ogg Vorbis | .ogg |
Android, Windows, Linux, supporting browsers |
| Ogg Opus | .opus |
Android, Windows, Linux, supporting browsers |
| Raw ADTS AAC | .aac |
Android, iOS, Windows, Linux; browser-dependent |
| AIFF / AIFF-C | .aif, .aiff, .aifc |
iOS, Windows, Linux |
| Monkey's Audio | .ape |
Windows, Linux |
| QuickTime | .mov |
iOS, Windows, Linux; browser-dependent |
- ๐ฎ Ipod Built-in Games
- ๐ธ Ability to View Photos and Videos from the device
| Platform | Installation Links |
|---|---|
| Android |
|
| Linux |
|
| Windows |
|
| iOS |
Unsigned; requires sideloading and signing on your device. |
| macOS |
Apple Silicon and Intel; no Developer ID signature or notarization. |
| Web App |
|
Download Classipod-iOS.ipa from a release that includes Apple builds. This is
an unsigned device build, not an App Store or TestFlight download. Install it
using AltStore Classic with AltServer,
or another compatible sideloading tool, which signs it using your Apple account.
Downloading the IPA in Safari alone does not install it.
With a free account, AltStore apps need refreshing every seven days, and the three-active-app limit includes AltStore itself. Follow the tool's installation instructions, including Developer Mode where required. See AltStore's account limits.
Download Classipod-macOS.dmg, open it, and drag classipod.app into
Applications. The universal app supports Apple Silicon and Intel Macs
running macOS 12 or later.
The app is not notarized or signed with an Apple Developer ID. It carries a local ad-hoc signature for execution on Apple Silicon; this does not verify a developer identity. Gatekeeper may block the first launch. If you trust the release, try opening the app, then use System Settings โ Privacy & Security โ Open Anyway and confirm. See Apple's instructions.
On both platforms, choose a parent music folder when prompted. ClassiPod scans its subfolders and caches metadata and artwork. Use Settings โ Rescan Music Files to select a folder again and rebuild the index.
Apple downloads appear only on releases built with their platform options selected. See Apple release documentation for build commands, checksums, and release configuration. The web version remains an online demo and does not import local folders.
| Name | Usage |
|---|---|
| audio_service | To support background audio playback |
| battery_plus | Shows phone battery level and status |
| cupertino_icons | For ios style icons |
| device_preview_plus | For visualizing how the app looks on different devices and screens |
| disable_battery_optimization | To Disable vendor or android specific battery optimizations for background playback |
| file_picker | To select the directory from which the music files are scanned |
| flutter_localizations | For in-app localization map data |
| flutter_riverpod | For State Management |
| flutter_taglib | To read local audio metadata and embedded artwork |
| go_router | To handle routing within the app |
| hive_ce | To Cache Auio Metadata and store playlists |
| hive_ce_flutter | For flutter specific libs of hive |
| intl | For internalization and localization of the app |
| just_audio | To play audio files |
| just_audio_background | To control audio through media notification |
| just_audio_media_kit | To play audio files on Windows and Linux |
| media_kit_libs_linux | Media kit Libraries for Linux |
| media_kit_libs_windows_audio | Media kit Libraries for Windows |
| on_audio_query | To discover music through Android MediaStore |
| path_provider | To fetch app data directories |
| permission_handler | To check and request for file and audio access permissions |
| shared_preferences | To store system settings |
| tutorial_coach_mark | To provide app tutorial to the users |
| universal_html | For Launching the app in full-screen mode on web versions |
| url_launcher | For Launching the Donation Page Link |
| vibration | Used for vibration while using device controls |
| vibration_web | Used for vibration on the webapp version |
| build_runner | For code generation |
| custom_lint | For using custom lint rules |
| flutter_lints | For using recommended flutter lints |
| flutter_test | For unit and widget testing the app |
| hive_ce_generator | For automatically generating Hive TypeAdapters |
| riverpod_lint | For using riverpod specific linting rules |
Copyright (c) 2025 Aditya R BSD-4-Clause LICENCE
Ipod icons created by Freepik - Flaticon
Open Settings โ Library Settings โ Subsonic and enter the server's base URL (including any reverse-proxy path), username and password. ClassiPod supports token-authenticated Subsonic API 1.13+ servers. The connection is checked before saving. Native apps combine server and local music; Web shows the server library instead of demo songs while enabled.
Configure Subsonic edits the connection or removes it. Turning Subsonic off keeps its configuration and cache, hides its tracks, and stops server playback. Saved playlist entries remain available when the same server is reconnected. Refresh Library fetches a new catalog; Reindex Library also clears cached server artwork. Failed scans retain the previous catalog. Ratings and edits stay in ClassiPod and are not written back to the server.
Native passwords use OS secure storage. Web passwords last only until reload; re-enter the password through Configure Subsonic or when starting playback. Metadata and artwork are cached, but audio is streamed and requires a connection. Server playlist synchronization and offline audio downloads are not included.
Web servers must allow CORS from the ClassiPod origin. Browsers block HTTP servers from an HTTPS app. Native apps allow HTTP for user-configured servers, including LAN IP addresses, using app-wide Android and Apple transport exceptions because server hosts are not known at build time. HTTPS certificates are still validated. HTTP traffic is unencrypted; prefer HTTPS when available. Transport configuration changes require rebuilding and reinstalling the app; hot reload does not apply them. Linux secure storage requires the system Secret Service/libsecret; Windows builds require the Visual Studio ATL component used by flutter_secure_storage.
