Ferrum

Music library and player
Download for Mac, Linux, Windows or Android


https://github.com/user-attachments/assets/b73cdcf8-8abb-4d43-a5eb-582cad7e3075 ## Features - Playlists & folders - Filtering - Queue - Metadata editing - Fast. Navigation, sorting & filtering should be instant even for libraries with 100 000 tracks - Quick playlist navigation with CmdK or CtrlK ## Android The Android app is not useful yet, unless you just want you browse your library. There's no playback or syncing. You have to manually copy over your Library.json file. Get it on Obtainium ## Dev instructions ### Get started 1. Install Node.js 2. Install Rust 3. Run `npm install` ### Structure App (Electron) - Source: `src/electron.js` and `src/electron/` - Build output: `build/app/` Web (the frontend) - Source code: napi and `src/` - Build output: `build/web/` Napi (the native Rust backend) - Source code: `src-native/` - Build output: `ferrum-addon/addon.node` ### Commands - `npm run dev`: Start app in dev mode - `npm run dev-release`: Start app in dev mode (optimized) - `npm run build`: Build - `npm run lint`: Lint - `npm run format`: Format ### Publish new version 1. Run `npm run check` 2. Update `CHANGELOG.md` 3. Run `npm version --no-git-tag-version ` to bump the version number 4. Create a git tag in the format `v#.#.#` 5. Add release notes to the generated GitHub release and publish it