Release Notes
Follow the journey of our product. Here’s a detailed log of every feature, fix, and improvement we’ve shipped.
August 17, 2025
v0.4.1Roman Numeral Integration & Component Architecture Improvements
Enhanced Roman numeral functionality with guitar chord integration, major component refactoring, and UI/UX improvements
Features & Improvements
- NEWRoman Numeral Analysis in Guitar Chords Tab - Integrated Roman numeral chord analysis functionality directly into the guitar chords tab for comprehensive music theory analysis
Technical
- REFACTORINGAnalysis Page Components - Completed major refactoring work across multiple analysis page components for improved maintainability and performance
- REFACTORINGChord Grid Architecture - Restructured chord grid component architecture with better separation of concerns and reusable patterns
- REFACTORINGLyrics Transcription Components - Broke down LeadSheetDisplay component into smaller, reusable components: LyricsControls, NoLyricsMessage, and LyricLine for better modularity
- FIXChord Label Display Consistency - Fixed guitar chord diagram display inconsistency with roman numeral analysis
- FIXYouTube Video Player Resizing - Resolved video player resizing issues when lyrics or AI chat panels are opened for better space optimization
- UIRoman Numeral Typography - Fixed typography and positioning for Roman numeral displays
- UIChangelog Design - Redesigned changelog interface for enhanced readability and better information hierarchy
- UILayout Stability - Fixed layout shift issues in toggle button groups for smoother user interactions
- UIAdded background color for cell where modulation occurs to indicate key change
August 15, 2025
v0.4.0Roman Numeral Analysis & Backend Architecture Refactoring
Major feature release introducing Roman numeral chord analysis and comprehensive backend refactoring for improved maintainability
Features & Improvements
- NEWRoman Numeral Analysis (Beta) - Added Roman numeral chord notation display below chord labels for music theory analysis
- NEWKey Detection Integration - Roman numerals automatically adapt to detected song key with proper chord function analysis
- NEWRoman Numeral Toggle - Added dedicated toggle button with beta tag in the chord grid controls
- ARCHITECTUREBackend Refactoring - Factored monolithic Python app.py into modular services, blueprints, and endpoints
- PERFORMANCEImproved chord-to-Roman numeral mapping with robust sequence alignment handling
- UIEnhanced chord grid with optional Roman numeral display for music education and analysis
Technical
- Implemented Roman numeral mapping logic with sequence correction handling for accurate chord function analysis
- Refactored Python backend from monolithic app.py into organized blueprintsaudio, chord_recognition, debug, key_detection
- Created dedicated service modules for audio processing, chord utilities, and key analysis
- Added robust chord sequence alignment algorithm to handle timing discrepancies between UI and analysis data
- Integrated Roman numeral analysis with existing key detection and chord recognition pipelines
- Cleaned up debug console logs from Roman numeral mapping and authentication flows
Core Changes
- Roman Numeral Analysis marked as [beta] - feature may evolve based on user feedback and music theory requirements
July 27, 2025
v0.3.5Enharmonic Inversion Fixes & Beat Detection Optimization
Critical fixes for enharmonic chord inversions and madmom beat detection optimization for songs starting at 0 seconds
Features & Improvements
- FIXEnharmonic Inversion Corrections - Fixed enharmonic spelling for chord inversions with flats (Eb/3 → Eb/G, Bb/3 → Bb/D) and sharps (G#/3 → G#/B#)
- FIXMadmom Beat Detection Optimization - Fixed madmom models skipping optimal shift calculations for songs with first beat detected at or near 0 seconds
- PERFORMANCEChord Grid Alignment - Improved chord-to-downbeat alignment for songs that start immediately with strong beats
- MINOR FIX6 beats per measure now displayed as 6/8 time signature
Technical
- Enhanced enharmonic inversion logic to properly handle flat and sharp chord inversions with correct bass note spelling
- Fixed calculatePaddingAndShift function to separate padding calculation from shift optimization logic
- Removed aggressive early return condition (≤0.05s) that prevented shift calculation for songs starting at 0 seconds
- Maintained shift calculation for optimal chord alignment regardless of first beat timing
- Cleaned up debug console logs from useScrollAndAnimation, Firebase services, and analysis components
July 25, 2025
v0.3.4Guitar Chord Diagram Database Integration & Synchronization Fixes
Critical fixes for guitar chord diagram accuracy and chord-lyrics synchronization with official database integration
Features & Improvements
- SYNC FIXChord-Lyrics Synchronization (Partial Fix) - Added musical note symbols (♪) for each chord change to improve sync between chords and lyrics sections, addressing sync issues for chords
- PERFORMANCEEnharmonic Correction Optimization - Fixed enharmonic chord matching logic and optimized performance from O(n²) to O(n) complexity using hash map lookups
- BUG FIXChord Padding Click Issue - Fixed non-clickable chord padding for "N.C." (No Chord) vs "N/C" notation handling
- FIXReplaced hardcoded chord database with official @tombatossals/chords-db database, ensuring accurate chord fingering patterns for all supported chord types
- FIXReplaced unformatted chord labels under guitar chord diagrams with formatted forms matching beat chord grid
Technical
- Integrated official @tombatossals/chords-db/lib/guitar.json with 2069+ accurate chord fingering patterns
- Enhanced chord name parsing to support both colon notation (C:minor) from ML models and standard notation (Cm)
- Fixed enharmonic mapping to match database keysC# → Csharp, F# → Fsharp for proper chord lookup
- Implemented comprehensive suffix mapping for both ML model outputs and standard chord notation
- Removed hardcoded FALLBACK_CHORD_DATABASE with incorrect fret positions and fingering patterns
- Added support for Unicode musical symbols (♯, ♭) and enhanced chord parsing regex patterns
Core Changes
- Guitar Chord Diagram Database Integration - Replaced hardcoded fallback chord database with official @tombatossals/chords-db database, ensuring accurate chord fingering patterns for all supported chord types
July 21, 2025
v0.3.3Chord Simplification & UI Improvements
Enhanced user experience with chord simplification toggle and responsive UI improvements
Features & Improvements
- NEWChord simplification toggle that converts complex chord progressions into 5 basic chord types (Major, Minor, Augmented, Diminished, Suspended)
- IMPROVEDSynchronized lyrics toggle converted from checkbox to modern toggle button design
- IMPROVEDMoved synchronized toggle to lyrics panel header for better space utilization
- IMPROVEDEnhanced responsive layout for toggle buttons above YouTube frame
- IMPROVEDMobile experience with horizontal scrollable button container that prevents UI overflow
Technical
- Implemented comprehensive chord simplification algorithm with support for 5 basic chord types
- Enhanced LyricsPanel component with header reorganization and improved toggle placement
- Added responsive toggle button container with cross-browser scrollbar hiding
- Optimized mobile layout with proper max-width constraints and overflow handling
- Updated documentation with comprehensive changelog section and feature descriptions
July 19, 2025
v0.3.2Enhanced Lyrics & Chords Display System
Core implementation improvements focusing on comprehensive chord display and intelligent section handling in the lyrics and chords tab
Features & Improvements
- ENHANCEDComplete chord coverage in lyrics and chords tab - all chords now display even when outside lyrical sections
- NEWIntelligent instrumental section placeholders with visual indicators ([Intro], [Outro], [Instrumental]) that support chord positioning
- NEWAI chatbot segment label integration - section labels automatically appear above corresponding lyrics when segmentation data is available
- IMPROVEDSynchronized section visualization between beat/chord grid and lyrics display for better song structure understanding
Technical
- Implemented comprehensive chord timeline merging algorithm that identifies gaps between lyrical sections
- Added intelligent grouping of consecutive chords into chord-only sections with configurable gap threshold (4 seconds)
- Enhanced LeadSheetDisplay component with segmentation data integration and section label rendering
- Optimized chord positioning logic to handle instrumental placeholders, chord-only sections, and regular lyrics uniformly
- Improved component architecture with proper TypeScript typing and memoization for performance
July 16, 2025
v0.3.1UI Performance Optimization
Release focused on addressing some UI performance issues
Features & Improvements
- PERFORMANCEreduced re-renders in ChatbotSection by optimizing buildSongContext with memoization
- PERFORMANCEdecreased font size recalculation by memoizing
- PERFORMANCEoptimized chord shift logic by caching shift calculation to prevent redundant calculations
- PERFORMANCEmemoized row grouping to avoid repeated array operatons during render
- PERFORMANCEreduced DOM operations, cached active line arrays, optimized deep cloning
Technical
- Memoized calculateOptimalShift and shifted chords array to avoid recomputation on every render
- Throttled high-frequency useEffect tied to currentTime to prevent excessive DOM reads and layout reflows
- Cached character arrays and memoized color interpolation in active lyric lines to reduce render-time CPU load
- Memoized buildSongContext to avoid object recreation and reduce ChatbotSection re-renders
July 15, 2025
v0.3.0Song Segmentation & UI Revamp
Major feature release introducing AI-powered song segmentation visualization and temporary edit capabilities for enhanced music analysis workflow
Features & Improvements
- NEWSong segmentation visualization with color-coded beat/chord grid sections (verse, chorus, bridge, etc.)
- NEWTemporary edit mode for song titles and individual chord labels with intuitive UI controls
- UINew UI for guitar chord diagrams under segmentation
- UIHomepage UI revamp with new layout and structure
Technical
- Segmentation features supported by LLM learning the context of chords and lyrics transcription
- Edit mode support temporary editing from users
- Synchronize beat chord grid between chord grid and guitar chord diagrams
Core Changes
- Segmentation feature is in experimental mode - expect changes to the feature and its implementation
July 9, 2025
v0.2.6UI Revamp & Model Selection Improvements
Major UI improvements with HeroUI component migration, streamlined model selection workflow, and enhanced user experience
Features & Improvements
- UIMigrated to HeroUI component library for better consistency and maintainability
- UIStreamlined model selection workflow by removing redundant standalone model selection page
- UIEnhanced embedded model selectors with improved accessibility (aria-labels and textValue props)
- UIFixed upload audio button styling with proper contrast and blue accent theme (#1e40af)
- UIImproved API key management instructions with more concise Music.AI workflow setup guidance
- BACKENDFixed model selection API endpoint routing from direct backend calls to Next.js API routes
- BACKENDResolved status page localhost endpoint configuration issues
Technical
- Removed standalone /model-selection page and ModelSelectionInterface component to eliminate code duplication
- Fixed HeroUIChordModelSelector API endpoint from ${backendUrl}/chord-model-info to /api/model-info
- Added proper accessibility attributes to HeroUI Select components (textValue, aria-label)
- Enhanced button styling with explicit background colors and hover states for better contrast
- Simplified Music.AI API key setup instructions while maintaining essential workflow information
Core Changes
- Removed /model-selection route - model selection is now embedded in analyze pages only
July 8, 2025
v0.2.5Search UI Enhancements & Backend Port Update
Enhanced search functionality with improved dropdown width, simplified result display, and backend port configuration update for macOS compatibility
Features & Improvements
- UIExpanded sticky search bar dropdown width to span full width of search input and upload button combined
- UISimplified search results display by removing view count and duration metadata
- UIFixed search results clearing bug when search input is emptied
- UIEnhanced beat timeline visualization with improved proportional downbeat bars
- UIImproved mini search box functionality in navigation bar with dropdown results and state synchronization
- BACKENDUpdated localhost backend URL from port 5000 to 5001 to avoid conflict with macOS AirDrop/AirTunes
- BACKENDCentralized backend URL configuration through environment variables for better maintainability
Technical
- Moved search dropdown positioning from form-relative to parent container-relative for full width spanning
- Removed duration and view count display from SearchResults ThumbnailImage component
- Enhanced search state synchronization between main and sticky search components
- Updated all backend URL references to use port 5001 instead of 5000
- Maintained 400ms debouncing for optimal search performance and YouTube API quota management
Core Changes
- Backend port changed from 5000 to 5001 - update local development environment accordingly
July 7, 2025
v0.2.4Critical Stability & UI Fixes
Essential fixes for React infinite loops, layout spacing issues, and production build optimizations
Features & Improvements
- STABILITYFixed React "Maximum update depth exceeded" infinite loop errors in Lyrics & Chords tab
- STABILITYResolved circular dependencies in useScrollAndAnimation and LeadSheetDisplay components
- STABILITYEliminated duplicate beat tracking that caused state conflicts and crashes
- UIFixed excessive white space above "Analysis Results" title for better visual layout
- UIImproved guitar chord diagram animation smoothness with reduced scale differences
- UIFixed musicAI.png image aspect ratio warning for proper rendering
- CLEANUPRemoved all console logging statements from guitar chord diagram functionality
- CLEANUPEliminated debug logs from chord parsing and pattern suffix mapping
- BUILDFixed TypeScript compilation errors and unused variable warnings
Technical
- useEffect dependency arrays optimized to prevent infinite re-renders
- Removed setCurrentTime from useScrollAndAnimation hook dependencies
- Fixed memoizedChords usage in LeadSheetDisplay component
- Eliminated redundant beat tracking in analyze page
- Reduced container padding from p-4 to px-4 pt-2 pb-1 for better spacing
- Image component aspect ratio properly maintained without style overrides
July 7, 2025
v0.2.3Music.AI Caching & UI Polish
Critical fixes for Music.AI lyrics caching, React performance optimizations, and enhanced user interface with globe icon for translations
Features & Improvements
- CACHINGFixed Music.AI lyrics caching to Firestore - no more expensive repeated API calls
- CACHINGImplemented unauthenticated public caching for ML model outputs (lyrics transcriptions)
- CACHINGUpdated Firestore security rules to support safe public caching of transcription results
- PERFORMANCEFixed React "Maximum update depth exceeded" errors in lyrics & chord tab
- PERFORMANCEAdded proper memoization with useMemo and useCallback to prevent infinite re-renders
- PERFORMANCEOptimized useEffect dependency arrays to eliminate unnecessary component updates
- UIAdded professional globe icon (🌐) to translate lyrics button with light/dark mode support
- UIEnhanced visual consistency with custom SVG icon integration
- CLEANUPRemoved all remaining console logs with emoji prefixes for production-ready code
- CLEANUPEliminated debug logs from AnalyzePage, AudioProcessing, Metronome, and Auth services
- STABILITYFixed build issues with dynamic imports and improved error handling in cache routes
Technical
- Firebase authentication issue resolved for server-side API routes
- Firestore security rules updated to allow unauthenticated writes to lyrics collection
- React hooks optimized with proper dependency management
- LeadSheetDisplay component performance significantly improved
- Source map errors eliminated from production builds
July 6, 2025
v0.2.2Performance Revolution & Metronome Redesign
Major performance optimizations with 90%+ improvements and complete metronome system redesign for professional-grade functionality
Features & Improvements
- PERFORMANCEBeat-chord grid alignment optimization with two-pointer replacing brute force (90%+ improvement)
- PERFORMANCEReact component memoization reducing re-renders by 80-90%
- METRONOMEComplete redesign using pre-generated audio tracks for perfect synchronization
- METRONOME300% volume boost with 360% downbeat emphasis for clear audibility
- METRONOMEPerfect sync - starts from current playback position instead of restarting
- METRONOMEContinuous playback throughout entire song duration
- ANIMATIONFixed critical regression where clicking chord cells froze beat tracking
- OPTIMIZATIONBinary search O(log n) beat tracking replacing O(n) algorithms
- OPTIMIZATIONBundle size maintained at 438kB while adding significant functionality
- CLEANUPRemoved excessive console logging for cleaner development experience
Core Changes
- Metronome now uses pre-generated tracks instead of real-time scheduling
- Legacy metronome scheduling methods deprecated but maintained for compatibility
July 5, 2025
v0.2.0Guitar Chords Tab & Enhanced Music Analysis
Major feature release introducing interactive guitar chord diagrams with professional music notation
Features & Improvements
- NEWGuitar Chords tab with interactive chord diagram visualization
- Animated chord progression view that adapts to your screen size
- Professional musical notation with proper sharp (♯) and flat (♭) symbols
- Enhanced chord recognition with support for complex chord types
- Smoother animations and improved visual experience
- Comprehensive credits section acknowledging open-source contributions
Core Changes
- Guitar Chords and Lyrics & Chords tabs marked as [beta] - features may evolve based on feedback
July 4, 2025
v0.1.2Improved YouTube Audio Processing
Enhanced reliability and performance for YouTube audio extraction with better Unicode support
Features & Improvements
- Improved YouTube audio extraction with better reliability
- Enhanced support for international song titles and artist names
- Streamlined setup process for local development
- Better error handling and user feedback during audio processing
- Improved performance and stability for production deployments
Core Changes
- Local development now requires Python backend running on localhost:5001 (avoiding macOS AirTunes port 5000 conflict)
July 2, 2025
v0.1.1Critical Bug Fixes & Performance Improvements
Resolved critical production issues affecting chord synchronization and performance warnings
Features & Improvements
- Fixed chord synchronization API failure (HTTP 400 errors) for direct file uploads
- Resolved 413 "Payload Too Large" errors for files >4MB in blob upload workflow
- Created new /api/synchronize-chords endpoint for direct chord-beat synchronization
- Enhanced service worker error handling to prevent console warnings
- Optimized resource preloading to eliminate unused preload warnings
- Achieved functional equivalence between YouTube and direct upload workflows
- Improved production console output with cleaner error handling
- Enhanced blob upload workflow with proper API contract matching
- Zero build warnings and clean compilation for production deployment
June 30, 2025
v0.1.0Production Ready Release
Complete chord recognition and music analysis platform with AI assistance
Features & Improvements
- YouTube integration with audio extraction using yt-dlp
- Advanced chord recognition with multiple models (Chord-CNN-LSTM, BTC SL/PL)
- Beat detection using Beat-Transformer and madmom models
- Lyrics transcription and translation with Music.ai and Gemini APIs
- AI chatbot assistant with contextual music analysis
- Synchronized metronome with Web Audio API
- Dark/light mode theme support
- API key management with client-side encryption
- Firebase caching for analysis results and translations
- Karaoke-style lyrics with letter-by-letter synchronization
- Enharmonic chord correction with toggle functionality
- Lead sheet layout with professional music notation
- Dynamic chord grid visualization with beat alignment
- Multi-language lyrics translation support