Skip to content

Shironex/shiranami

Repository files navigation

Shiranami

白波  ·  Shiranami

Your personal music sanctuary.

GitHub Release Downloads Platform License

Download  ·  Website  ·  Changelog

A calm desktop player for your local music library, internet radio, synced lyrics, YouTube downloads, and full playlist imports, all in one quiet space.


What is Shiranami?

Shiranami is a desktop music player for people who keep their music locally. Instead of pushing you toward a streaming catalog, it wraps around your own folders and files and adds playlists, synced lyrics, internet radio, YouTube downloads, full playlist importing, crossfade, a compact mini player, audio visualizer, listening statistics, and Discord Rich Presence on top — all in a dark lavender interface that stays out of your way.

Screenshot

Shiranami library view
Your library, now playing, and queue — all in one calm view.

What's inside

Local library Scan your folders, browse tracks, and play from your own collection
Metadata enrichment Automatically fills missing tags and cover art from online sources
Albums & sort modes Browse by album grid, sort by title, artist, year, or recently added
Subfolder auto-playlist Each subfolder becomes its own playlist automatically
Playlists Create playlists with custom covers and quick access from the sidebar
Favorites Heart any track and browse them all in a dedicated view
Mixes Auto-generated smart collections based on your listening patterns
Listening history Play counts, top tracks and artists, daily activity graph, time-range filters
Playlist import Pull full YouTube or Spotify playlists into a review list before download
Search & download Find tracks on YouTube with autocomplete, preview audio, and download with yt-dlp + ffmpeg
yt-dlp + ffmpeg auto-install One-click tool setup from inside the app, with update checks built in
Custom download location Choose where downloaded tracks land on disk
Internet radio Browse, stream, and favorite stations from Radio Browser
Synced lyrics Lyrics that scroll with the music; click any line to seek
Configurable lyrics typography Adjust font size and dim opacity separately for plain and synced lyrics modes
Crossfade Dual-deck engine with equal-power crossfade, configurable from 1 to 12 seconds
Equalizer 10-band EQ with preamp and 13 built-in presets
Audio visualizer Bars, Waveform, Circle, and Wave styles rendered above the player bar
Now Playing view Immersive full-window view with large artwork, lyrics, and queue
Sleep timer Preset durations or custom 1–600 min, with live countdown and auto-pause
Compact mode Mini player with always-on-top, full controls in a smaller window
Command palette Ctrl+K to search your library and jump to any view instantly
Keyboard shortcuts Full shortcut sheet accessible from inside the app
Bulk selection Multi-select tracks with context menus for batch actions
Share links Generate a deep-link for any track so others can import it directly
Sidebar customization Reorder and toggle which sections appear in the navigation sidebar
Low-perf mode Disables heavy animations and effects for older or lower-power machines
Noise overlay Subtle film-grain texture over the UI for a warmer aesthetic
UI scale Adjust the interface from 80 % to 120 % to match your display
EN + PL interface Full English and Polish localization, switchable at runtime
Ambient color Extracts the dominant color from album art and tints the entire UI
Playback resume Volume, queue, track, and position survive restarts
Discord Rich Presence Shows the currently playing track in your Discord status
System tray & media keys Control playback from the tray icon or your keyboard's media keys
Auto-updater In-app updates on Windows, GitHub Releases link on macOS
Dark lavender mood One quiet theme that matches the late-night listening vibe

Getting started

Grab the latest build from Releases.

Windows

  1. Download the .exe installer.
  2. Run it — Windows might show a SmartScreen warning since the app isn't code-signed. Click "More info" then "Run anyway".
  3. That's it!

macOS

  1. Download the .dmg file.
  2. Open it and drag Shiranami to your Applications folder.
  3. macOS will block it because it's unsigned. Open Terminal and run:
    xattr -cr /Applications/Shiranami.app
    You'll need to run this after each update.

Built with

Desktop Electron 40
Frontend React 18, Vite 7, Tailwind CSS 4
Database SQLite, better-sqlite3, Drizzle ORM
Landing Astro 6, Tailwind CSS 4
UI Radix UI, Lucide Icons
State Zustand
Quality ESLint, Prettier, Husky
CI/CD GitHub Actions

Building from source

You'll need Node.js >= 22 and pnpm >= 10.

git clone https://github.com/Shironex/shiranami.git
cd shiranami
pnpm install
pnpm dev
All commands
pnpm dev             # Desktop + web
pnpm dev:web         # Renderer only
pnpm dev:landing     # Landing page only
pnpm lint            # Run linter
pnpm typecheck       # Type check
pnpm build           # Build the app
pnpm build:landing   # Build landing page
pnpm package:win     # Package for Windows
pnpm package:mac     # Package for macOS

Project structure

shiranami/
├── apps/
│   ├── desktop/          # Electron main process and packaging
│   ├── landing/          # Astro landing page
│   └── web/              # React renderer
├── packages/
│   ├── database/         # Drizzle schema and DB helpers
│   └── shared/           # Shared types and constants
└── scripts/              # Versioning and build helpers

License

This project is source-available — see the LICENSE file for details. You're free to use the app and explore the code, but redistribution, reselling, and derivative works are not permitted.


Made with ❤ by Shironex

Back to top

About

A softer place for your music library.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors