Skip to content

Latest commit

 

History

551 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

๐ŸŽต ClassiPod

Classipod App Screenshots

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.

โœจ Features

  • ๐Ÿ—ƒ๏ธ 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

๐ŸŽต Supported audio formats

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

๐Ÿ”œ Upcoming Features

  • ๐ŸŽฎ Ipod Built-in Games
  • ๐Ÿ“ธ Ability to View Photos and Videos from the device

๐Ÿ’ป Installation links

Platform Installation Links
Android Get it on Google Play
Get it on F-Droid
APK download
Linux Download .AppImage

Download .deb

Download .rpm
Windows Download Windows Installer
iOS Download .ipa
Unsigned; requires sideloading and signing on your device.
macOS Download .dmg
Apple Silicon and Intel; no Developer ID signature or notarization.
Web App Web App

Installing on iPhone or iPad

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.

Installing on macOS

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.

๐Ÿ”Œ Plugins

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

๐Ÿค“ Author

Aditya R

๐Ÿ”– LICENCE

Copyright (c) 2025 Aditya R BSD-4-Clause LICENCE

๐Ÿ™ Attributions

Ipod icons created by Freepik - Flaticon

Subsonic servers

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.

Releases

Sponsor this project

Packages

Used by

Contributors

Languages