Project Documentation

cueTunes

Desktop show-audio system for walk-ins, walk-outs, and house tracks with cue editing and waveform visualization, currently in foundational build phases.

Platform macOS + Windows
Architecture Tauri v2 + React + Rust
Privacy Offline-first, No Telemetry v1
Persistence SQLite + Migrations

Current Focus

  • Phase 0: product definition, architecture, schema, and security baseline.
  • Phase 1: cross-platform shell, settings, persistence, and job infrastructure.
Foundation Build Schema-first Security Baseline

Locked Product Decisions

Name & Platform

App name is cueTune. Target platforms are macOS and Windows.

Privacy Stance

Local-first data model with no telemetry in version one.

Media Inputs

Local WAV/MP3 plus YouTube URL import into local media files.

Repository Strategy

Single-repo model with modular feature and service boundaries.

Proposed Stack

  • Tauri v2 desktop shell.
  • React + TypeScript + Vite frontend.
  • Rust core services via Tauri commands.
  • SQLite with migrations for local data.
  • yt-dlp and ffmpeg conversion pipeline targets.

Repository Layout

  • docs/ for architecture, phased plans, ADRs, schema, security baseline.
  • src/ for frontend shell and feature modules.
  • src-tauri/ for commands, services, migrations, and app config.

Next Execution Step

Implement Phase 1 bootstrap commands and minimal compile/run pipeline after package and tool bootstrapping is ready in the environment.

User Instructions: First Launch

  1. If running from source, use npm install then npm run tauri:dev.
  2. Open Settings and run Install / Verify Bundled Binaries.
  3. Confirm both ffmpeg and yt-dlp are detected.
  4. Optionally set default output device and global fade-stop milliseconds.

Operator Guide by Tab

Library

Import WAV/MP3, create cue profiles, edit IN/OUT/fade points, and preview with keyboard shortcuts.

Show

Build show lists, queue rows, GO cues, assign hotkeys, reorder rows, and run active transport controls.

Spotify

Search tracks, save Spotify cues, and tune start/stop seconds for coarse timing metadata.

Converter + Jobs

Convert Spotify playlists into YouTube import jobs and monitor progress/history from Jobs.

Daily Workflow

  1. Import local tracks and build cue profiles in Library.
  2. Create or select a Show list, then add local and Spotify cues.
  3. Assign hotkeys and finalize timing in show row editor.
  4. Run live from Show tab using GO, pause/resume, and fade-stop controls.
Library First Show Execution Jobs Monitoring

Troubleshooting Checklist

  • YouTube import fails: verify bundled binaries in Settings and retry from Jobs.
  • Spotify 401 or token issues: reconnect Spotify login from Settings.
  • Spotify 404 no device: start playback from Spotify app/device first.
  • Cues stop too abruptly: increase Global Fade-Stop milliseconds.
  • No waveform: ensure import completed and reopen cue editor from Library.