Stop renting your music.
An offline-first streaming music app that connects to your home server.
Distribute is a decentralized, offline-first music player designed for those who own their library. It connects directly to your home server, syncing your collection for seamless offline playback.
| Feature | Description |
|---|---|
| Offline Ready | Your library is cached locally on your device. Take your entire collection on the plane, the subway, or into the wild. |
| Home Server Sync | Direct connection to your personal storage. Cross-sync servers to expand your library. |
| Lossless Audio | The clearest sound with no compromises, powered by a high-performance audio engine. |
| Privacy Focused | We don't store, control, or own your data. You host your hub. |
Download the latest release from the releases page.
Download from TestFlight
Distribute is built with a focus on performance, beauty, and utility.
- App Engine: Flutter (Cross-platform native performance)
- State Management: Bloc (Predictable state containers)
- Database: Drift (Reactive SQLite for offline caching)
- Audio: SoLoud (High-performance audio engine)
- Networking: Dio (Robust HTTP client)
- Global Search
- User Request System
- User Authentication
- Song Downloads
- Playlist Management
- Built-in Music Player
- Offline Mode
- Setup Wizard
- Album, artist search
- Advanced playlist management (reordering, playlist creation)
- Song streaming
- Browse local music files
- Cross-server content synchronization
- Social features (followers, comments)
- Music recommendation engine
Known Issues
- None
- Flutter SDK (v3.40.0-0.2.pre or higher)
- Dart SDK
-
Clone the repository:
git clone https://github.com/ProjectDistribute/Distribute.git cd app -
Install dependencies:
flutter pub get
-
Run the project:
flutter run
This project uses build_runner for type-safe code generation.
-
Generate files once:
dart run build_runner build -d
-
Watch for changes:
dart run build_runner watch -d
To keep your file explorer clean, add this to your .vscode/settings.json:
{
"explorer.fileNesting.patterns": {
"*.dart": "$(capture).g.dart, $(capture).freezed.dart"
}
}We don't endorse piracy. Distribute is built for your owned library. Support the artists you love by purchasing their music.



