Skip to content

Installation ​

Build from source ​

Requirements:

  • Node.js 18+
  • npm
bash
cd ipodrocks-js
npm install
npm run build
npm run preview    # run in production mode

For development with hot-reload:

bash
npm run dev

Headless server ​

To run the library on a machine with no screen — a NAS, a home server, a container — and drive it from a browser instead, see Deploying the Server — a container image, a systemd unit and a Cloudflare Tunnel walkthrough. The build is the same one as above; the daemon simply never loads Electron.

FFmpeg ​

FFmpeg is bundled automatically. No separate installation is required.

OpenRouter API key ​

Required for Savant playlists and Rocksy chat. Get your API key at openrouter.ai/keys, then add it in Settings (gear icon) → OpenRouter API. You can test the connection before saving.

Podcast Index API key ​

Required for Auto Podcasts (automatic podcast sync to devices). Get a free API key at podcastindex.org/developer, then add the key and secret in Settings → Podcasts → API credentials.

Musepack (mpcenc) ​

Required only if you use Musepack (MPC) as a codec for devices or shadow libraries.

PlatformInstall
Debian / Ubuntusudo apt install musepack-tools
Fedora / RHELsudo dnf install mpc-tools or musepack-tools
Archsudo pacman -S musepack-tools
macOSbrew install musepack
WindowsDownload from musepack.net, add mpcenc.exe to PATH

If mpcenc is not on your PATH, iPodRocks will prompt when you select Musepack. You can still use other codecs (MP3, AAC, Opus, etc.) without it.

Supported audio formats ​

iPodRocks scans and catalogs these formats: MP3, FLAC, AAC, M4A, OGG, Opus, WAV, AIFF. Transcoding output supports MP3, AAC, Musepack (MPC), Opus, and OGG.

Data location ​

The app stores its database (ipodrock.db) and preferences in the platform user data directory. See Troubleshooting for paths and backup notes.