Skip to content

MrSpectra/cadence

Repository files navigation

Cadence - Mobile Player

An offline, ad-free music player for Android, built with Flutter. It plays a local music library and can sync tracks (audio + covers) from a self-hosted Resonance backend over the local network.

This is an anonymized portfolio copy. The bundled music library is replaced with three placeholder demo entries; no real audio or covers are included.

Features

  • Offline playback - plays from a local library stored on the device.
  • Background audio - media-style notification with play/pause/next/previous, shuffle and repeat, powered by just_audio + just_audio_background.
  • Library screen - browse tracks, like/unlike, search.
  • Player screen - full-screen player with cover art and transport controls.
  • Server sync - point the app at a Resonance backend URL (Settings) and pull the library, downloading missing audio/cover files locally.

Tech stack

  • Flutter (Dart SDK >= 3.3), Material 3
  • just_audio / just_audio_background for playback and the media session
  • audio_session, path_provider, shared_preferences, http
  • A small vendored copy of just_audio_background under packages/ (path dependency)

Setup

flutter pub get
flutter run

To sync from a backend, open Settings in the app and enter the server URL (e.g. http://192.168.1.50:5050), then run sync from the library screen.

Project layout

lib/
  main.dart                 # app entry, background audio init
  models/track.dart         # Track model (local + server JSON)
  screens/                  # library, player, settings
  services/                 # library (local store), player, sync (server pull)
assets/
  tracks.json               # demo library manifest (3 placeholder tracks)
  music/ covers/            # local media (gitignored; .gitkeep only)
android/                    # Android host project (package com.example.cadence)
packages/just_audio_background/   # vendored path dependency

Notes

  • Application id / namespace: com.example.cadence.
  • android/local.properties is intentionally not included (machine-specific SDK paths); Flutter regenerates it on first build.

About

Cadence - offline music player for Android. Flutter, Dart, just_audio with background playback, server sync. i18n EN/CS/RU.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages