Skip to content

Changelog

All notable changes to Gigmeister are documented here. The app supports Web (PWA), iOS (Capacitor), and Desktop (Electron).


  • Persistent Practice Sessions: Practice sessions now persist across navigation with realtime sync to all band members
  • Active Practice Sessions Database: New active_practice_sessions table with band_id, song_ids array, and RLS policies
  • API Routes: Add active-practice-session routes (GET, POST, DELETE, PATCH)
  • Realtime Subscriptions: Add subscription for active_practice_sessions table changes
  • Mobile UI Improvements: Dropdown menu, hidden font resize buttons (pinch-to-zoom available)
  • Song Editor: Unified step selector for MIDI settings across multiple steps
  • Click Track: Add persistClickTrackAcrossSongs option with debug logging
  • MIDI Clip Loop Count: Configure loop count for MIDI clips per song
  • MIDI Clip Device ID: Associate MIDI clips with specific devices
  • iOS Safe Area: Add safe area top padding for native iOS app (fixes notch/dynamic island positioning)
  • Mobile Z-Index: Fix z-index so bottom navigation appears above practice view
  • Practice Mode: Don’t auto-enter practice view on page load; immediately update state after API calls
  • TTS Announcements: Improve song announcement cleanup, error handling, skip announcement when manually clearing pending transition
  • MIDI: Multiple MIDI fixes and improved MIDI learn functionality
  • UI: Fix stepcard, header, z-index changes, navigation fixes
  • Better song navigation
  • Improved pinch-to-zoom support
  • Better hooks architecture
  • Enhanced playback coordinator
  • Improved autoplay functionality
  • Styling improvements

  • Docker/Coolify Deployment: Add Docker configuration for self-hosted deployment via Coolify
  • MIDI Automation View: New components for visualizing MIDI automation
  • MIDI Content Type: Add MIDI content type to view mode options
  • Per-Song Content Type: Content type preference with auto-save per song
  • Duplicate Finder: Add skip functionality to mark pairs as “not duplicates”
  • Offline Settings: Offline settings tab with enable/disable toggle
  • TTS Song Announcements: Text-to-speech announces current song during performance
  • BPM Animation: Animate BPM display changes
  • MIDI Next Step Control: Add MIDI control for Next Step navigation
  • Alpha Banner: Subtle footer fallback when Alpha banner is dismissed
  • Resolve React 19 peer dependency conflicts
  • Prevent flash of home page before onboarding redirect
  • Use Capacitor MIDI hook to detect MIDI support on native
  • Update file path for lyrics import
  • Add missing use-debounce dependency
  • Replace custom useDebounce with use-debounce library
  • Refactor SongEditor and MidiAutomationView for improved state management
  • Hide header and nav during active practice session
  • Increase z-index of PracticeSessionView for full-screen coverage

  • Phase 1 MVP: Electron app infrastructure with WebView loading from Vercel
  • Phase 2: Enhanced offline support with local API server and IndexedDB
  • Phase 3: Native desktop features (system tray, keyboard shortcuts, auto-updates, notifications)
  • Phase 4: Polish and distribution (macOS, Windows, Linux builds)
  • GitHub Actions CI/CD: Automated builds triggered by electron-v* tags

New MIDI device mappings bringing total to 49 supported devices:

  • Korg MicroKorg, MicroKorg 2, Minilogue XD, Prologue, Wavestate
  • ASM Hydrasynth
  • Modal Cobalt8
  • Behringer DeepMind 12
  • Roland System-8
  • Elektron Digitone, Analog Four
  • And many more…
  • Quick open performance view for songs (Cmd/Ctrl+K)
  • Harden Electron local API server and IPC

  • Song actions UI improvements
  • Skip npm rebuild for Electron (no native modules needed)

  • Song Steps in Chord Sheets: Display step markers in chord sheet view
  • Fumadocs Integration: Public documentation at /docs powered by Fumadocs
  • SWR Integration: Data fetching with SWR for improved caching
  • Better practice mode experience
  • Nicer API design
  • Fix MCP (Model Context Protocol) server

  • Configure auto-advance based on measure count
  • Automatic song progression during performance
  • Upload and manage backing tracks per song
  • Playback during performance
  • MIDI control to advance to next song step

  • Offline enabled preference per user
  • IndexedDB caching for offline access
  • Background sync when connection restored
  • New content view mode for MIDI-focused display
  • Preferred content type saved per song
  • Mark song pairs as “not duplicates” to skip in future scans

  • Model Context Protocol (MCP) server for AI assistant integrations
  • MCP auth codes for secure connection
  • Connect Claude Desktop and other MCP clients
  • Band activation workflow
  • Improved onboarding experience
  • MIDI clips per song step
  • Step-specific MIDI clip names

  • Song Steps: Divide songs into multiple steps/sections
  • Step Sequence: Ordered steps with custom arrangement
  • Step Tempo: Per-step tempo configuration
  • Step MIDI Settings: Individual MIDI settings per step
  • Audio Channel Routing: Route audio to specific outputs
  • Audio Device Preference: Select preferred audio output device
  • Click Track Settings: Configurable click track with measure events
  • Toggle Click MIDI Action: MIDI control to toggle click track
  • Runtime feature flag system
  • Gradual feature rollout capability

  • Custom MIDI program change mappings per user
  • Override default device mappings
  • Content display preferences per user
  • Hide/show lyrics, chords, lead sheets

Five visual themes:

  • Dark (default): Zinc palette with yellow accents
  • Synthwave: Neon magenta/cyan, 80s retro
  • Cyberpunk: Neon green/yellow matrix
  • Vaporwave: Pastel pink/cyan 90s aesthetic
  • Sunset: Warm orange/golden tones

  • User API Keys: Generate long-lived API keys (gig_xxxxxxxxxxxx format)
  • API Usage Logs: Track requests per key with endpoint and timing
  • Usage Statistics: Daily/monthly usage reports
  • Next Practice Songs: Prioritized practice queue
  • Drag-and-drop reordering: Organize practice priorities
  • Smart Suggestions: Recommendations for least-practiced songs

  • Demo data generation for new bands
  • Quick onboarding with sample songs and setlists

  • Per-user, per-song transpose settings
  • Transpose preview in song editor
  • Personal transpose independent from band settings

  • Upload MIDI files (.mid) per song
  • Auto-play option on song selection
  • Playback via Tone.js and @tonejs/midi
  • Supabase Storage (midi-clips bucket)
  • Email notifications for new band signups
  • Admin alerts via Resend

  • PDF Support: Upload and view multi-page PDFs
  • Image Support: Upload PNG/JPG chord charts
  • Pinch-to-Zoom: Zoom and pan on touch devices
  • Full-screen View: Expand during performance
  • Supabase Storage (lead-sheets bucket)
  • Track AI feature usage per band
  • Usage limits for free tier

  • Paddle Integration: Payment processing and subscriptions
  • Subscription Tiers: Free, Trialing, Active, Pro
  • Billing Portal: Self-service subscription management
  • Webhooks: Handle Paddle subscription events
  • Max 2 band members
  • Max 10 songs
  • Max 2 setlists

  • First alternate theme (Synthwave)
  • Neon magenta/cyan aesthetic
  • Add section markers to setlists (SET 1, SET 2, ENCORE)
  • Visual separation in setlist view
  • Row Level Security for file uploads
  • Band-scoped storage access

  • Upload rehearsal recordings with multiple stems
  • Individual track volume control
  • Song markers within recordings
  • Multitrack player component

  • MIDI Devices: Configure up to 4 MIDI devices per user
  • Device Types: Generic, Known (21 devices), MIDI Thru
  • Program Changes: Bank MSB/LSB + Program Change messages
  • Song MIDI Settings: Per-device settings per song
  • MIDI Thru: Forward MIDI input to another device

Initial Known Devices:

  • Nord Stage 4, Stage 3, Electro 6, Piano 5, Lead A1
  • Yamaha CP88/CP73, YC Series
  • Korg Kronos/Nautilus
  • Roland RD-2000
  • Hammond SKX/SK Pro
  • Line 6 Helix
  • Kemper Profiler
  • Fractal FM9/Axe-FX
  • Boss GT-1000
  • Neural DSP Quad Cortex
  • Roland SPD-SX/Pro
  • Moog Subsequent 37
  • Sequential Prophet Rev2
  • Novation Peak/Summit
  • Access Virus TI
  • Arturia PolyBrute
  • Optimized database functions for performance
  • Efficient song/setlist queries

  • Band owner role with elevated permissions
  • Ownership transfer capability
  • Owner-only billing management

  • Chord sheet two-column display mode
  • Better use of screen real estate
  • Per-user notes on songs
  • Personal annotations independent from shared data

  • Default Transpose: Global transpose offset
  • MIDI Enabled: Show/hide MIDI controls
  • MIDI Clip Auto-Play: Auto-play on song select
  • Hide Lyrics: For instrumentalists
  • Hide Chords: For vocalists
  • Show Chord Diagrams: Visual chord reference
  • Font Size: Small/medium/large text

  • Multi-user Bands: Share songs and setlists
  • Invite Codes: Join bands via unique codes
  • Row Level Security: Data isolation between bands
  • Real-time Sync: Instant updates across all members

  • Lyrics field on songs
  • Full lyrics display in song view

  • Tags: Categorize songs (ballad, opener, 80s, etc.)
  • Practice Sessions: Log rehearsals with notes
  • Media URL: Link to reference recordings

  • Database index for faster song searches
  • Improved query performance

  • Reusable Templates: Create song groups (e.g., ”90s Medley”)
  • Quick Insert: Add entire groups to setlists
  • Ordered Songs: Maintain song order within groups

  • Song Library: Create, edit, delete songs
  • Song Metadata: Title, artist, key, tempo, duration, time signature, notes
  • Chord Sheets: Inline chord markers with [Chord] syntax
  • Setlists: Create and organize setlists
  • Drag-and-Drop: Reorder songs in setlists
  • Duration Tracking: Total setlist duration
  • Soundman View: Share-friendly view for sound engineers
  • Next.js with App Router
  • React with TypeScript
  • Supabase (PostgreSQL + Auth)
  • Row Level Security (RLS)
  • Vercel deployment
  • Mobile-first responsive design

  • Current: Next.js 16, React 19, TypeScript, Tailwind CSS v4
  • Supabase backend with real-time subscriptions
  • IndexedDB + Service Worker for offline-first
  • Claude AI integration for smart features
  • Capacitor 8 framework
  • Custom MIDI plugin using CoreMIDI
  • Server mode (loads from Vercel)
  • Haptics, Status Bar, Network plugins
  • Electron with electron-builder
  • Local API server for offline support
  • System tray, keyboard shortcuts, auto-updates
  • macOS (x64, arm64), Windows (x64), Linux (x64)
  • GitHub Actions CI/CD
  • On roadmap (not yet implemented)

VersionDevices AddedTotal
1.0.0Initial 21 devices21
2.6.0+28 devices49

Supported Categories:

  • Stage Keyboards (Nord, Yamaha, Korg, Roland, Hammond, Kurzweil, Dexibell)
  • Synthesizers (Moog, Sequential, Novation, Access, Arturia, Oberheim, Waldorf, Modal, ASM, Behringer, Elektron)
  • Workstations (Roland Jupiter/Fantom, Yamaha Montage/MODX)
  • Guitar/Bass Processors (Line 6, Kemper, Fractal, Boss, Neural DSP)
  • Drums (Roland SPD-SX, Nord Drum)