Compare commits

..

5 Commits

Author SHA1 Message Date
Psychotoxical 730eb877ea docs: update readme for v1.0.0 initial release 2026-03-09 20:17:47 +01:00
Psychotoxical 8e28b349e7 docs: fresh changelog for initial public release v1.0.0 2026-03-09 20:09:49 +01:00
Psychotoxical e5ac5b775f chore: release v1.0.0 2026-03-09 20:07:30 +01:00
Psychotoxical 244435cdf1 chore: bump version to 0.1.2 and fix tauri capability build error 2026-03-09 19:52:08 +01:00
Psychotoxical bf0fdc9dd6 Update README.md 2026-03-09 19:43:30 +01:00
5 changed files with 38 additions and 29 deletions
+22 -16
View File
@@ -5,22 +5,28 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.1.1] - Beta Hotfix
### Fixed
- **App Termination Bug**: Fixed an issue where the application would hang in the background when the close button was clicked due to default Tauri tray icon handling. The `exit_app` event is now correctly triggered.
## [0.1.0] - Initial Release
## [1.0.0] - 2026-03-09
### Added
- **Core Architecture**: Full transition to Tauri v2 with React front-end.
- **Subsonic API Integration**: Complete support for browsing albums, artists, playlists, and fetching streams.
- **Theming System**: Implementation of the Catppuccin Mocha (Dark) and Latte (Light) design systems with dynamic CSS variables.
- **Internationalization (i18n)**: Multi-language support structure established with English and German translations out of the box.
- **Player & Queue**: Fully functional persistent queue with drag-and-drop support, repeat modes, and volume state retention.
- **Live "Now Playing"**: Real-time dropdown to view active streams on the connected server.
- **Settings & Network**: Dual URL configuration (LAN/External) with ping-testing capabilities.
- **Full-Screen Player**: Immersive full-screen mode showing massive album art and track metadata.
- **Continuous Integration**: Automated GitHub Actions to compile native binaries for Linux, macOS, and Windows.
- **Initial Public Release**: The first stable release of Psysonic.
- **Subsonic/Navidrome API**: Full integration for browsing library, artists, albums, and playlists.
- **Audio Playback**: Modern audio engine powered by Howler.js with support for various codecs.
- **Queue Management**: Persistent play queue with drag-and-drop reordering and server-side synchronization.
- **Secured Credentials**: Industry-standard security using Tauri's encrypted store for authentication tokens.
- **Design System**: Premium aesthetics based on the Catppuccin palette (Mocha & Latte themes).
- **Multi-Language**: Full localization support for English and German.
- **Fullscreen Mode**: Dedicated immersive player view with high-res album art.
- **Last.fm Scrobbling**: Built-in support for track scrobbling to Last.fm via Navidrome.
- **System Integration**: Native tray icon support, minimize-to-tray, and global media key handling.
- **Intelligent Networking**: Automatic or manual switching between LAN (Local) and External (Internet) addresses.
- **Live Now Playing**: Real-time view of what other users or players are streaming on your server.
- **Search**: Fast, real-time search for songs, albums, and artists.
*Initial public release repository setup.*
### Security
- **Hardened Sandbox**: Restricted filesystem permissions to only necessary download/cache directories.
- **API Lockdown**: Disabled global Tauri objects to mitigate XSS risks.
- **Credential Storage**: Replaced insecure `localStorage` with a native encrypted store.
### Fixed
- Fixed a memory leak in the track prefetching engine.
- Improved Error handling for unstable Subsonic server responses.
+12 -8
View File
@@ -12,9 +12,6 @@
---
> [!WARNING]
> **Beta Release (v0.1.0):** This is the very first public release. While fully usable, you might encounter bugs. Additionally, the English translation is currently incomplete in some areas.
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](https://github.com/catppuccin/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.
@@ -25,20 +22,27 @@ Designed specifically for users hosting their own music via Navidrome or other S
- 🎨 **Gorgeous UI**: Deeply integrated Catppuccin themes (Mocha & Latte) with smooth glassmorphism effects and micro-animations.
-**Blazing Fast**: Built with Rust & Tauri, resulting in minimal RAM usage compared to typical Electron apps.
- 🌍 **Internationalization (i18n)**: Fully translated into English and German, with the architecture built to easily support more languages.
- 🌍 **Internationalization (i18n)**: Fully translated into English and German (v1.0.0).
- 📻 **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.
- 💾 **Local Caching**: Fast loading times with customizable image caching thresholds.
- 💿 **Album & Artist Views**: Beautiful grid displays and detailed artist pages with related albums.
- 🎛️ **Queue Management**: Drag & drop support, playlist saving, and loading directly built into the queue.
- 🎛️ **Queue Management**: Drag & drop support, playlist saving, and loading directly built into the queue. Server-side queue synchronization is fully supported.
- 🖥️ **Cross-Platform**: Available natively for Windows, macOS, and Linux.
## 🛡️ Security
With the **v1.0.0 Release**, Psysonic has been hardened for public use:
- **Secured Credentials**: Industry-standard security using Tauri's native encrypted store.
- **Hardened Sandbox**: Restricted filesystem permissions to only necessary directories.
- **Native Security**: Disabled global Tauri objects to significantly reduce XSS attack vectors.
## 📥 Installation
Navigate to the [Releases](https://github.com/Psychotoxical/psysonic/releases) page and download the installer for your operating system.
- **Windows**: `.exe` or `.msi`
- **macOS**: `.dmg`
- **macOS**: `.dmg` (Universal or Apple Silicon)
- **Linux**: `.AppImage` or `.deb`
## 🚀 Getting Started
@@ -54,8 +58,8 @@ If you want to build Psysonic from source or contribute to the project:
### Prerequisites
- [Node.js](https://nodejs.org/) (v18+)
- [Rust](https://www.rust-lang.org/)
- OS-specific build dependencies for Tauri (see the [Tauri prerequisites guide](https://tauri.app/v1/guides/getting-started/prerequisites)).
- [Rust](https://www.rust-lang.org/) (v1.75+)
- OS-specific build dependencies for Tauri (see the [Tauri prerequisites guide](https://tauri.app/v2/guides/getting-started/prerequisites)).
### Setup
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "psysonic",
"version": "0.1.2",
"version": "1.0.0",
"private": true,
"scripts": {
"dev": "vite",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "psysonic"
version = "0.1.2"
version = "1.0.0"
description = "Psysonic Desktop Music Player"
authors = []
license = ""
+2 -3
View File
@@ -1,7 +1,7 @@
{
"$schema": "https://schema.tauri.app/config/2",
"productName": "Psysonic",
"version": "0.1.2",
"version": "1.0.0",
"identifier": "dev.psysonic.app",
"build": {
"beforeDevCommand": "npm run dev",
@@ -10,7 +10,7 @@
"frontendDist": "../dist"
},
"app": {
"withGlobalTauri": true,
"withGlobalTauri": false,
"windows": [
{
"title": "Psysonic",
@@ -31,7 +31,6 @@
"trayIcon": {
"iconPath": "icons/icon.png",
"iconAsTemplate": false,
"menuOnLeftClick": false,
"title": "Psysonic",
"tooltip": "Psysonic"
}