Mobile / Music / Real-Time

MuzicationMuzication

Cross-platform mobile app for live music asset synchronization.
Offline-First • Synchronized Metronome • Hybrid Network

Init Muzication
Hybrid Connectivity
LAN, WAN or Wi-Fi Direct connection via Bridging.
Muzication Dashboard
Repertoire Management
Control the session, send setlists, and sync the whole band.
Setlist view
Setlists and Metadata
Key, BPM, and unified control.
Acordes y Letras
Lyrics and Chords on the Fly
Mathematical transposition and Web Scraping integration.

Tech Stack

FlutterDartC++ FFISQLiteFirebaseTCP/UDP
Songwriting Tools
Songwriting Tools
Built-in songwriting tools and utilities.
Song Library
Song Library
Comprehensive visualization and management of the band's musical catalog.

01.The Challenge

For bands playing live, synchronization is critical. Relying on the internet (WAN) is risky in closed venues, while a purely local setup (LAN) can be an issue if a remote member must lead or if no routers are available on stage.

Additionally, keeping a metronome perfectly synchronized across multiple devices demands sub-millisecond precision, something impossible to achieve with traditional network audio streams.

02.The Solution

  • Hybrid Network Topology: LAN, Cloud (Firebase), and Direct, with Offline-first support.
  • Core NTP Sync: The Master sends timestamps (Delta Time) and each client generates the metronome sound natively (C++ / FFI).
  • Uninterrupted Persistence: Full history in SQLite and 'magic' session resumption via UUID.
  • Push-to-Talk and local transfer of PDFs and sheet music in real time.
  • Stage UI: 0xFF121212 Dark Mode and off-thread rendering to prevent frame drops.

// Technical Innovation

0msAudio Network Latency

Pulses are rendered locally; no click audio is sent over the network.

100%Offline Availability

Works without internet by connecting devices to a router or via Wi-Fi Direct.

C++ FFINative Performance

Ultra-low latency audio handling without blocking Dart's UI thread.

Interested in building high-performance apps?

Start an Iteration