Skip to content
Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Audion Logo

Audion

A modern, local music player with a Spotify-inspired experience

Features β€’ Installation β€’ Development β€’ Plugins β€’ License

Version Platform License


πŸ“Έ Screenshots

Main Player
Clean, modern interface for browsing your music library

Lyrics Panel
Real-time synced lyrics with smooth scrolling

Fullscreen Mode
Immersive full-screen player with album art and lyrics

Album View
Beautiful album pages with track listings

Plugin Manager
Extensible plugin system for custom functionality


✨ Features

🎡 Core Music Experience

  • Local Library Management β€” Scan and organize your local music collection with automatic metadata extraction
  • Album Art Display β€” Beautiful album artwork fetched from your music files
  • Smart Playlists β€” Create, edit, and manage custom playlists
  • Queue Management β€” Full queue control with drag-and-drop reordering

🎀 Lyrics Integration

  • Synced Lyrics β€” Real-time synchronized lyrics from LRCLIB and Musixmatch
  • Word-by-Word Sync β€” Premium karaoke-style word highlighting
  • Lyrics Panel β€” Dedicated panel with smooth auto-scrolling
  • Local Caching β€” LRC files saved locally for offline access

🎨 Customization

  • Theme Engine β€” Fully customizable color schemes with live preview
  • Dark/Light Mode β€” System-aware theme switching
  • Accent Colors β€” Choose your preferred accent color palette
  • Mini Player β€” Compact mode for minimal desktop footprint

πŸ”Œ Plugin System

  • Extensible Architecture β€” JavaScript and WebAssembly plugin support
  • Permission System β€” Granular permissions for plugin security
  • Event API β€” React to player events (track changes, play/pause, etc.)
  • UI Injection β€” Plugins can add custom UI elements

πŸ–₯️ Desktop Experience

  • Full-Screen Mode β€” Immersive full-screen player with lyrics
  • Keyboard Shortcuts β€” Quick controls for power users
  • Context Menus β€” Right-click actions for tracks, albums, and artists
  • Cross-Platform β€” Native performance on Windows, macOS, and Linux

πŸ“¦ Installation

Pre-built Binaries

Download the latest release for your platform from the Releases page.

Platform Download
Windows Audion_1.0.0_x64-setup.exe

Build from Source

Prerequisites

Steps

# Clone the repository
git clone https://github.com/dupitydumb/Audion.git
cd audion

# Install dependencies
npm install

# Run in development mode
npm run tauri dev

# Build for production
npm run tauri build

πŸ› οΈ Development

Tech Stack

Layer Technology
Framework Tauri 2.0
Frontend SvelteKit + TypeScript
Backend Rust
Database SQLite (via rusqlite)
Styling CSS Variables + Custom Theme Engine

Project Structure

audion/
β”œβ”€β”€ src/                    # Frontend (SvelteKit)
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ components/     # UI components
β”‚   β”‚   β”œβ”€β”€ stores/         # Svelte stores (state management)
β”‚   β”‚   β”œβ”€β”€ plugins/        # Plugin runtime & API
β”‚   β”‚   β”œβ”€β”€ lyrics/         # Lyrics fetching (LRCLIB, Musixmatch)
β”‚   β”‚   └── api/            # Tauri API wrappers
β”‚   └── routes/             # SvelteKit routes
β”œβ”€β”€ src-tauri/              # Backend (Rust)
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ commands/       # Tauri commands
β”‚   β”‚   β”œβ”€β”€ db/             # SQLite database operations
β”‚   β”‚   └── scanner/        # Music file scanner
β”‚   └── tauri.conf.json     # Tauri configuration
β”œβ”€β”€ plugin-examples/        # Example plugins
└── static/                 # Static assets

Available Scripts

npm run dev          # Start SvelteKit dev server
npm run build        # Build frontend for production
npm run tauri dev    # Run full Tauri app in development
npm run tauri build  # Build production binaries
npm run check        # TypeScript type checking

πŸ”Œ Plugins

Audion supports a flexible plugin system that allows extending functionality.

Plugin Permissions

Permission Description
player:read Access current track, playback state
player:control Play, pause, skip, seek
storage:local Persist plugin data locally
ui:inject Add custom UI elements
system:notify Show system notifications

Example Plugin

(function() {
    const MyPlugin = {
        init(api) {
            this.api = api;
            
            // Listen for track changes
            api.on('trackChange', (track) => {
                console.log('Now playing:', track.title);
            });
        },
        
        start() {
            // Plugin enabled
        },
        
        stop() {
            // Plugin disabled
        }
    };
    
    window.MyPlugin = MyPlugin;
    window.AudionPlugin = MyPlugin;
})();

See the plugin-examples folder for more examples.


πŸ—‚οΈ Supported Formats

Audion supports all audio formats that your system can play, including:

  • Lossless: FLAC, WAV, ALAC, AIFF
  • Lossy: MP3, AAC, OGG, Opus, M4A
  • Metadata: ID3v2, Vorbis Comments, APE Tags

πŸ“„ License

This project is licensed under the MIT License. See the LICENSE file for details.


Made with ❀️ using Tauri and Svelte

About

🎡 A modern, local music player with synced lyrics, themes, and plugins β€” built with Tauri & Svelte

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages