A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
954
stars
1,704
commits
TypeScript
primary language
Sep 13, 2026
updated
A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
Web App
·
Report Bug
·
Request Feature
git clone https://github.com/victoralvesf/aonsoku.git
pnpm install
pnpm run dev
pnpm run electron:dev
version: '3.8'
services:
aonsoku:
container_name: aonsoku
image: ghcr.io/victoralvesf/aonsoku:latest
restart: unless-stopped
ports:
- 8080:8080
[Unit]
Description=Aonsoku Container
[Container]
ContainerName=aonsoku
Image=ghcr.io/victoralvesf/aonsoku:latest
PublishPort=8080:8080
AutoUpdate=registry
[Service]
Restart=always
[Install]
WantedBy=multi-user.target default.target
Below is a table describing the environment variables that can be used in this project. Adjust them as necessary in your .env file.
| Variable | Default | Description | Required for Automatic Login |
|---|---|---|---|
PORT | 8080 | The port the application runs on. | |
SERVER_URL | If you want the app to access a predefined Subsonic server. Format: http://your-subsonic-server:port. | ✅ | |
HIDE_SERVER | false | Set to true to hide the server URL field on login and only show username and password. | ✅ |
APP_USER | The username for automatic login. | ✅ | |
APP_PASSWORD | The password for automatic login. | ✅ | |
APP_AUTH_TYPE | token | Specifies the authentication method. Options: token or password. | |
SERVER_TYPE | subsonic | Specifies the server name (important for some fixes). Options: subsonic, navidrome or lms | |
HIDE_RADIOS_SECTION | false | Set to true to hide the radios page from the sidebar menu. | |
APP_THEME | dark | Specify the app theme. Possible values: light, dark, black, one-dark, night-owl-light, marmalade-beaver, noctis-lilac, material-theme, monokai-pro, github-dark, shades-of-purple, bearded-solarized, catppuccin-mocha, nuclear-dark, achiever, dracula, discord, tinacious-design, vue-dark, vim-dark-soft. | |
APP_HIDE_THEMES | false | Set to true to hide the themes section so the user cannot change the theme. | |
IMAGE_CACHE_ENABLED | false | Set to true to enable the image cache. | |
DISABLE_IMAGE_CACHE_TOGGLE | false | Set to true to prevent the user from changing the image cache setting. | |
DISABLE_DOWNLOADS | false | Set to true to disable song downloads. | |
DISABLE_LRCLIB | false | Set to true to disable downloading lyrics from LRCLIB. |
Notes:
APP_AUTH_TYPE=password only if your server does not support token-based authentication.Since this application is not signed and notarized by Apple, macOS Gatekeeper may block it from running to protect your system. You might encounter:
To fix this, please follow these steps:
/Applications folder.# 1. Remove the quarantine attribute (Fixes "App is damaged")
sudo xattr -cr /Applications/Aonsoku.app
# 2. Re-sign the application locally (Fixes immediate crashes/library errors)
sudo codesign --force --deep --sign - /Applications/Aonsoku.app
Feel free to request more cool features here.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project uses Weblate for translations. If you'd like to help, please visit the link to submit your contribution.
Distributed under the MIT License. See LICENSE.txt for more information.
(top 30 of 54)
TypeScript
96.8%
CSS
2.4%
A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
954
stars
1,704
commits
TypeScript
primary language
Sep 13, 2026
updated
A modern desktop client for Navidrome/Subsonic servers built with React and Electron.
Web App
·
Report Bug
·
Request Feature
git clone https://github.com/victoralvesf/aonsoku.git
pnpm install
pnpm run dev
pnpm run electron:dev
version: '3.8'
services:
aonsoku:
container_name: aonsoku
image: ghcr.io/victoralvesf/aonsoku:latest
restart: unless-stopped
ports:
- 8080:8080
[Unit]
Description=Aonsoku Container
[Container]
ContainerName=aonsoku
Image=ghcr.io/victoralvesf/aonsoku:latest
PublishPort=8080:8080
AutoUpdate=registry
[Service]
Restart=always
[Install]
WantedBy=multi-user.target default.target
Below is a table describing the environment variables that can be used in this project. Adjust them as necessary in your .env file.
| Variable | Default | Description | Required for Automatic Login |
|---|---|---|---|
PORT | 8080 | The port the application runs on. | |
SERVER_URL | If you want the app to access a predefined Subsonic server. Format: http://your-subsonic-server:port. | ✅ | |
HIDE_SERVER | false | Set to true to hide the server URL field on login and only show username and password. | ✅ |
APP_USER | The username for automatic login. | ✅ | |
APP_PASSWORD | The password for automatic login. | ✅ | |
APP_AUTH_TYPE | token | Specifies the authentication method. Options: token or password. | |
SERVER_TYPE | subsonic | Specifies the server name (important for some fixes). Options: subsonic, navidrome or lms | |
HIDE_RADIOS_SECTION | false | Set to true to hide the radios page from the sidebar menu. | |
APP_THEME | dark | Specify the app theme. Possible values: light, dark, black, one-dark, night-owl-light, marmalade-beaver, noctis-lilac, material-theme, monokai-pro, github-dark, shades-of-purple, bearded-solarized, catppuccin-mocha, nuclear-dark, achiever, dracula, discord, tinacious-design, vue-dark, vim-dark-soft. | |
APP_HIDE_THEMES | false | Set to true to hide the themes section so the user cannot change the theme. | |
IMAGE_CACHE_ENABLED | false | Set to true to enable the image cache. | |
DISABLE_IMAGE_CACHE_TOGGLE | false | Set to true to prevent the user from changing the image cache setting. | |
DISABLE_DOWNLOADS | false | Set to true to disable song downloads. | |
DISABLE_LRCLIB | false | Set to true to disable downloading lyrics from LRCLIB. |
Notes:
APP_AUTH_TYPE=password only if your server does not support token-based authentication.Since this application is not signed and notarized by Apple, macOS Gatekeeper may block it from running to protect your system. You might encounter:
To fix this, please follow these steps:
/Applications folder.# 1. Remove the quarantine attribute (Fixes "App is damaged")
sudo xattr -cr /Applications/Aonsoku.app
# 2. Re-sign the application locally (Fixes immediate crashes/library errors)
sudo codesign --force --deep --sign - /Applications/Aonsoku.app
Feel free to request more cool features here.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project uses Weblate for translations. If you'd like to help, please visit the link to submit your contribution.
Distributed under the MIT License. See LICENSE.txt for more information.
(top 30 of 54)
TypeScript
96.8%
CSS
2.4%