Stretto (previously Node Music Player)
An open source web-based music player
You can view a version I have hosted on my personal server at http://music.kaiserapps.com/.
To have the full functionality and to use your own music please follow the install instructions below.
User Installation Instructions
Visit the releases page for the latest release, and select the download for your platform. Unzip the download and run either the
Stretto.exe on Windows,
Stretto.app on Mac or the
Stretto executable on Linux.
Dev Installation Instructions
If you have any issues during install, make sure you are running the latest version of Nodejs and Npm.
For the Youtube download and converison, make sure you have ffmpeg installed on your system (including all necessary encoding libraries like libmp3lame or libx264). Windows users can install ffmpeg from Zeranoe.
After all the dependencies have been installed, run these commands to install the music player:
git clone --depth=1 https://github.com/benkaiser/stretto.git cd stretto/ npm install
Then run the server with:
Alternatively, install PM2 (read more about PM2 at pm2.keymetrics.io)with
npm install -g pm2 and run the server persistently with:
pm2 start app.js
localhost:2000 in your browser (or known IP of server if it is on a different machine). From there a prompt will allow you to change your music directory, after saving your music directory you can click
Scan Library -> Regular Scan at the top of the page. From there select
Start Scan and let it do it's magic adding all the songs to your library. Happy listening!
- operating system
- architecture (32bit or 64bit)
- nodejs version
- npm version
Then include steps to reproduce followed by what you were aiming to do / expected to happen, and what did happen.
Android Sync App
If you want to sync your Stretto playlists to your Android phone, check out Stretto Sync.
And if you like using Stretto, consider buying my a slurpee by purchasing the play store version:
Remote Control Shortcuts
If you would like to hook up keyboard shortcuts to play/pause/next/prev when you aren't currently focused on the chrome follow these steps:
In whatever program you use to configure your shortcuts, link the button press you want to curl commands of the format:
<remote_name>is the remote name you entered and
<command>can be either
playpause. For an example, here is my i3 config bindings that hook up Alt+PgDn, Alt+PgUp and Alt+Home to the commands:
bindsym $mod+Home exec curl http://localhost:2000/command/my_remote_name/playpause bindsym $mod+Next exec curl http://localhost:2000/command/my_remote_name/prev bindsym $mod+Prior exec curl http://localhost:2000/command/my_remote_name/next
- Sync between computers (share your library with your friends!)
- Android sync application Stretto Sync
- Generate mix from songs streamed from YouTube, allowing you to explore new music from your current library
- Download from YouTube and SoundCloud
- Built in the open with other open source libraries
- View full-resolution cover art
- Full playlist support
- Multiple selection
- Repeat, repeat one and shuffle
- Search functionality
- See the Github task board for the product roadmap. If you want to request a feature, please create an issue.