workfm
v0.1.5
Published
A CLI tool to stream royalty-free music from the Jamendo API, perfect for creating the perfect work soundtrack.
Downloads
110
Readme
WorkFM 🎵
A CLI tool to stream royalty-free music from the Jamendo API, perfect for creating the perfect work soundtrack.
Prerequisites
Before installing WorkFM, ensure you have the following installed on your system:
ffmpeg
WorkFM uses ffmpeg to process and stream audio files. You must have ffmpeg installed.
macOS:
brew install ffmpegUbuntu/Debian:
sudo apt-get install ffmpegWindows: Download from ffmpeg.org or use:
choco install ffmpegVerify installation:
ffmpeg -versionSetup
Getting a Jamendo API Key
WorkFM uses the Jamendo API to fetch royalty-free tracks. You'll need to create a Jamendo app to get your Client ID.
Steps to create a Jamendo App:
- Visit Jamendo Developer Portal
- Sign up or log in to your account
- Navigate to "My Apps" section
- Click "Create New App"
- Fill in the app details and accept the terms
- Your app will be created with a Client ID displayed on the app details page
Important: Copy the Client ID (not the Client Secret)

Install via npm / use directly via npx
npm install -g workfmYou can also use npx if you would like to avoid a permanent installation.
npx workfm <command>Configure Your API Key
Run the following command with your Jamendo Client ID:
workfm config set YOUR_JAMENDO_CLIENT_IDThis will save your API key to ~/.workfm/config.json
Usage
Show all available stations
workfm show stationsPlay a station
workfm play <station>Available stations: lofi (default), and others
Example:
workfm cafePlay with default station
workfmThis plays the default "lofi" station.
Search for music
workfm -s "jazz music"Use the -s or --search flag to search for specific types of music.
Examples
# Play lofi hip-hop (default)
workfm
# Play a specific station
workfm cafe
# Search for jazz
workfm -s "jazz"
# Search for upbeat music
workfm -s "upbeat electronic"Configuration
Your Jamendo Client ID is stored in ~/.workfm/config.json. If you need to update it, simply run:
workfm config set NEW_CLIENT_IDDevelopment
Run in development mode:
npm run dev -- play cafeBuild for production:
npm run buildDebug mode:
npm run debug -- play rainAbout Jamendo
WorkFM uses the Jamendo API to fetch royalty-free music. Jamendo is a platform hosting thousands of independent artists' work with permissive licensing.
License
ISC
