Psychotoxical f666f84479 chore: switch license from MIT to GPL v3
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 21:33:02 +01:00
2026-03-09 19:17:23 +01:00

Psysonic Logo

Psysonic

A modern, gorgeous, and blazing fast desktop client for Subsonic API compatible music servers (Navidrome, Gonic, etc.).

Latest Release License: GPL v3 Built with Tauri


Psysonic is a beautiful desktop music player built completely from the ground up for the modern era. Utilizing Tauri v2 and React, it offers a native-feeling, lightweight, and incredibly fast experience with a stunning UI inspired by the Catppuccin aesthetic.

Designed specifically for users hosting their own music via Navidrome or other Subsonic API servers, Psysonic aims to be the best way to interact with your personal library.

Psysonic Screenshot

Features

  • 🎨 Gorgeous UI: 8 deeply integrated themes (Catppuccin series + Nord series) with smooth glassmorphism effects and micro-animations.
  • Blazing Fast: Built with Rust & Tauri — native audio engine (rodio), minimal RAM usage compared to typical Electron apps.
  • 🌍 Internationalization (i18n): Fully translated into English and German.
  • 📻 Live "Now Playing": See what other users on your server are currently listening to in real-time.
  • 🎵 Last.fm Scrobbling: Full integration for scrobbling your tracks via the Navidrome server.
  • 💾 IndexedDB Caching: Ultra-fast loading times with persistent IndexedDB image caching for cover art and artist images.
  • 📀 Album Downloads: Support for downloading entire albums directly to your local machine.
  • 💿 Album & Artist Views: Beautiful grid displays and detailed artist pages with related albums and color-coded initial avatars for fast browsing.
  • 〰️ Waveform Seekbar: Canvas-based waveform with a blue-to-mauve gradient and glow effect — click or drag anywhere to seek.
  • 🌊 MilkDrop Visualizer: Full-screen Butterchurn/MilkDrop visualizer in the Ambient Stage with hundreds of presets and smooth transitions.
  • 🎛️ Queue Management: Drag & drop reordering, shuffle, playlist saving/loading, and server-side queue synchronization.
  • 🎼 Random Mix: Generate a random playlist from your entire library. Filter by keyword or pick a Super Genre (Metal, Rock, Electronic, Jazz…) for a focused mix with progressive loading.
  • 🔗 In-App Browser: Last.fm and Wikipedia links on artist pages open in a dedicated native window — no need to leave the app.
  • 🔄 Update Notifications: Built-in update checker (on startup + every 10 minutes) that notifies you when a new version is available on GitHub.
  • 🖥️ Cross-Platform: Available natively for Windows, macOS, and Linux (including Wayland support).

● Known Limitations

  • Linux (drag & drop cursor feedback): Due to a WebKitGTK limitation, the drag cursor does not reflect the drop operation type — it may appear as a "forbidden" symbol or show no indicator at all, depending on the desktop environment. Drag and drop itself works correctly.

📥 Installation

Navigate to the Releases page and download the installer for your operating system.

  • Windows: .exe or .msi
  • macOS: .dmg (Universal or Apple Silicon)
  • Linux: .AppImage or .deb

🚀 Getting Started

  1. Download and install Psysonic.
  2. Open the app and enter your Subsonic/Navidrome server details (URL, Username, Password).
  3. If applicable, you can provide both an external URL and a local LAN IP. Psysonic allows you to quickly toggle between them in the Settings.
  4. Enjoy your music!

🛠️ Development

If you want to build Psysonic from source or contribute to the project:

Prerequisites

Setup

# Clone the repository
git clone https://github.com/Psychotoxical/psysonic.git
cd psysonic

# Install node dependencies
npm install

# Run in development mode
npm run tauri:dev

# Build for production
npm run tauri:build

🤝 Contributing

Contributions are completely welcome! Whether it is translating the app into a new language, fixing a bug, or proposing a new feature.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

Distributed under the GNU General Public License v3.0. See LICENSE for more information.

This means: you are free to use, study, and modify Psysonic. If you distribute a modified version, you must release it under the same GPL v3 license and keep the original copyright notice intact. You may not incorporate this code into proprietary software.

S
Description
fork a psysonic player for contrib
Readme 58 MiB
Languages
TypeScript 68.9%
Rust 25.7%
CSS 4.7%
JavaScript 0.3%
Shell 0.2%