Releases: ModioStudio/MiniFy
Releases · ModioStudio/MiniFy
Release 0.4.1
Release v0.4.1
📝 Changelog
Minor Changes
- Added playlist browsing and add-to-playlist functionality
- Added "Playlists" option to right-click context menu for browsing user playlists
- Created PlaylistView to browse playlists and play tracks from them
- Added "+" button to LayoutB for adding the current song to any playlist
- Implemented AddToPlaylistModal component for quick playlist selection
- Added Spotify API functions for fetching playlists and adding tracks
- Integrated TOON format for AI DJ tool responses to reduce LLM token usage
- Added @toon-format/toon dependency for Token-Oriented Object Notation encoding
- Updated all Spotify tool responses to use TOON format for track and artist data
- Track data now uses compact format: n=name, a=artists, u=uri
- Artist data now uses compact format: n=name, g=genres, p=popularity, id=artistId
- Updated AI DJ system prompt to explain TOON format parsing
- Expected token savings of 30-50% on structured data responses
- Added Discord Rich Presence integration
- Shows currently playing track on Discord profile
- Toggle in Settings → Connections to enable/disable
- Displays: Track name, Artist, "Listening to MiniFy"
- Automatically updates when track changes or playback pauses
- "View on GitHub" button linking to the MiniFy repository
- AI Queue indicator: Shows "Artist • AI Queue" when AI Queue is active
- Enabled by default
- Enhanced AI DJ with automatic user context and privacy transparency
- AI DJ now automatically sends user context with each message for better recommendations:
- Display name, current time, currently playing track
- Recent tracks (last 15), top artists with genres
- Added privacy notice in Settings → Privacy explaining what data is sent to LLM providers
- AI Queue info box now updates in real-time showing correct "Next" track and remaining count
- Queue monitoring interval reduced from 5s to 3s for faster updates
- AI DJ now automatically sends user context with each message for better recommendations:
- Added AI Queue feature for endless automated playlists
- New AI Queue mode that generates continuous playlists based on listening history
- Analyzes last 30 played tracks and top artists using TOON format (saves ~40% tokens)
- Automatically queues 5 tracks at a time with smart prefetching
- Caches user preferences for 10 minutes to minimize API calls
- Red border indicator when AI Queue is active (shows token usage)
- Toggle in Settings > AI DJ to disable the border warning
- Queue button in AI DJ view to start/stop the feature
- Uses compact TOON data format for efficient LLM communication
- Performance optimizations and Volume control feature
- New Volume control accessible via right-click menu
- Slider for precise volume adjustment (debounced for smooth operation)
- Preset buttons for quick volume levels (Mute, 25%, 50%, 75%, 100%)
- Shows current playback device name
- PlaylistView: Implemented lazy loading - loads 30 tracks initially, loads more on scroll
- Added lazy loading for album art images (
loading="lazy") - SpotifyClient optimizations:
- Token caching to avoid repeated Tauri invocations
- Request deduplication for concurrent identical GET requests
- Fire-and-forget pattern for player controls (play, pause, next, prev)
- Debounced seek to avoid API flooding during scrubbing
- AI Queue auto-stops when user manually starts a different song
- TOON format verified across all AI-related code for token efficiency
- New Volume control accessible via right-click menu
Patch Changes
- Code cleanup and improvements
- Replaced dynamic imports with static imports in aiQueueService for better performance
- Added error handling for AI suggestion JSON parsing with descriptive error messages
- Fixed stale closure issue in PlaylistView loadMoreTracks callback
- Removed unused SplashScreen component and related CSS animations
- Removed unused ContextMenu component
- Fixed linter warnings in keyboard shortcuts switch statement
- Added keyboard shortcuts for quick navigation
- Ctrl+S: Open Search
- Ctrl+P: Open Playlists
- Ctrl+E: Open Settings
- Ctrl+M: Open Volume Control
- Ctrl+D: Open AI DJ (when configured)
- Escape: Return to player view
Shortcuts are displayed in the right-click context menu.
📦 Commits since v0.4.0
- feat: add discord_rpc_enabled setting to readSettings function (6acc54a)
- refactor: improve AI queue and playlist handling (bdfac29)
- feat: integrate AI Queue and Discord RPC features (f4b2319)
- chore: update development URLs in env.example (76356be)
- chore: update README to include Discord link (e0f5be1)
- chore: refine Dockerfile for MiniFy Docs build process (bb7e04d)
- chore: update Dockerfile for improved asset handling (94bc15a)
- chore: update Dockerfile and .dockerignore for improved build process (d3c490d)
- chore: delete changesets after release v0.4.0 (b5856ee)
This release was generated automatically using GitHub Actions.
Release 0.4.0
Release v0.4.0
📝 Changelog
Minor Changes
- Added AI DJ feature with multi-provider support
- Integrated Vercel AI SDK (OpenAI, Anthropic, Google AI, Groq)
- AI DJ chatbot accessible via right-click context menu
- Natural language music control and recommendations
- Added comprehensive Spotify tools for AI DJ
- Search and play tracks via natural language
- View recently played and top tracks/artists
- Analyze music taste (energy, mood, tempo, danceability)
- Get smart recommendations based on listening history
- Added active status for Music and AI providers
- Display AI model names in provider cards
- Renamed "Music Services" to "Music Provider"
- Added "Active" toggle for providers
- Active providers show highlighted border
- Moved AI API keys to secure system keyring
- Keys stored in OS credential manager (not plain text)
- Windows: Credential Manager, macOS: Keychain, Linux: Secret Service
- Added Rust commands for secure key management
- Updated clear-auth script to remove AI keys from keyring
Patch Changes
- Expanded documentation with comprehensive technical details
- Added detailed OAuth PKCE authentication flow documentation with diagrams
- Enhanced security documentation explaining keyring storage and credential management
- Expanded AI DJ documentation with architecture, tools, and data flow diagrams
- Updated architecture documentation with comprehensive system diagrams
- Improved desktop overview with feature matrix and application flow
- Enhanced installation and quick-start guides with troubleshooting sections
- Updated contributing guide with workflow diagrams and code style guidelines
- Added detailed settings and custom themes documentation
- Improved consistency across all documentation articles
📦 Commits since v0.3.0
- fix: handle missing API key in getActiveProviderWithKey function (1a9cbc4)
- chore: update README and enhance theme documentation (283f135)
- chore: update environment configuration and enhance documentation (b6574cd)
- chore: enhance AI integration and update documentation (53b0047)
- chore: delete changesets after release v0.3.0 (254dcb6)
This release was generated automatically using GitHub Actions.
Release 0.3.0
Release v0.3.0
📝 Changelog
Minor Changes
- Added "Choose Music Provider" screen with Spotify, Apple Music, YouTube Music options
- Implemented secure PKCE OAuth flow with local callback server
- Auto-opens browser for Spotify login, no manual token copy needed
- Added state validation and XSS protection for OAuth callbacks
- New "Connections" tab under Theme Studio showing connected music services
- Spotify connect/disconnect functionality with status indicator
- Apple Music and YouTube Music placeholders (coming soon)
Patch Changes
- Added
pnpm desktop:clearto reset auth data for testing - Supports Windows (cmdkey), macOS (security CLI), Linux (secret-tool)
- Improved error handling with platform-specific messages
- Semi-transparent backdrop on Boot screen matching Settings style
- Moved SplashScreen animations to global CSS
- Converted SplashScreen to named export
📦 Commits since v0.2.3
- chore: add @changesets/cli to devDependencies in package.json (0f772b6)
- chore: refine authentication handling and improve splash screen experience (32b3b10)
- chore: enhance desktop authentication and splash screen animations (bf2b8e2)
- chore: update package.json and desktop scripts for authentication and theme enhancements (6136b1e)
This release was generated automatically using GitHub Actions.
Release 0.2.3
Release v0.2.3
📦 Commits since v0.2.2
- chore: update public key injection to use plugins configuration (3ca49ba)
- chore: remove outdated Tauri key files and update public key injection path (c94609d)
- chore: delete changesets after release v0.2.2 (64c7c9d)
This release was generated automatically using GitHub Actions.
Release 0.2.2
Release v0.2.2
📝 Changelog
Minor Changes
Added new Workflows
Patch Changes
- Updated release workflow to include .sig files for all platforms
- Signature files enable secure auto-updates verification
📦 Commits since v0.2.1
- chore: automate deletion of consumed changesets in release workflow (fedc5a9)
- chore: enhance release workflow to include artifact signatures (efa1c64)
This release was generated automatically using GitHub Actions.
Release 0.2.1
Release v0.2.1
📝 Changelog
Minor Changes
Added new Workflows
📦 Commits since v0.2.0
- chore: update tauri build command to include script execution (b9ba0e8)
- chore: update macOS build configuration in release workflow (2938f79)
- chore: update package.json and pnpm-lock.yaml for changeset integration (5fcbb27)
This release was generated automatically using GitHub Actions.
MiniFy v0.2.0
Automated release for MiniFy v0.2.0
MiniFy v0.1.0
Automated release for MiniFy v0.1.0