## Overview

musicco is a web player for your music library

Host it on a NAS and start streaming your music from any browser.

#### What is musicco?

musicco is a small web application that lets you browse your music library and queue tracks.

All of this from a browser.

It's not revolutionary, it just solves a few very specific problems I had...

#### So why did you make musicco?

I was tired of syncing music onto devices, only to realise it takes forever or I forgot the particular album I wanted to listen to at home that day. Commercial music streaming services are all fine, but what about that obscure album I bought from a band at a show that I listen to andnobody knows about? What about the music I spent ages ripping from CDs at high bitrate? Oh, and don't get me started on id3 tags, my library is properly organised in Artist > Album folders, I don't need to worry about wrongly-tagged files or players that don't sort tags properly.

#### How does it work?

The concept behind musicco is nothing new. In fact, it is largely inspired by musicbrowser, another cool, lightweight music streaming solution.

It is also technically based on encode explorer, a simple and efficient PHP file browser.

The rest of the work was just putting a UI on top of a HTML5 audio player to create playlists and integrate cover art, artist and lyrics information (from Cover Art Archive, Wikipedia and ChartLyrics).

## Why do I need musicco?

- Do you have a music collection you want to be able to access from a browser?
- Do you have a NAS that is not powerful enough for solutions like Subsonic, Squeezebox or an iTunes Server?

- Do you just want something that works and is easy to set up?
- Do you need a music player that does not require flash?
- Do you want to use the same music player on your desktop and your phone?

#### Then you should probably give musicco a go!

## Features

#### Web Music Magic!

#### Your Playlists, anywhere

#### Folder-Based Music Library

#### Search all the things!

#### Surprise me!

#### Sing along to songs you don't know

#### Full Bio

#### Keyboard Support

#### Authentication and Sharing

#### Installation

#### Configuration

#### For Advanced Users

## Contact us

Wanna get in touch, request a feature or follow our blog? Use the buttons below.

## Web Music Magic!

musicco uses HTML5 audio and does not require flash to play mp3s.
Create awesome playlists you can really play from any device with musicco's completely responsive UI!

## Your Playlists, anywhere

Create your playlists, they will be saved automatically so you can resume from any other device.
Songs are grouped by album so you can easily move items up and down the playlist.

## Folder-Based Music Library

Your entire music library is displayed the way you organised it on your hard drive. No tagging is necessary.
For best results, musicco assumes that your music library is organised by artist / [year] album /01_song.mp3
But basically, songs will be detected in any folder in your library.
No files are modified. No id3 tags are read. The only modifications made in your library folder are that a cover is downloaded if none exists when a song is played for the first time.
Use the filter text to filter the top folders
You can directly add a folder or expand it to see what files it contains.
Click the info icon to view more information about an artist.

## Search all the things!

Click the magnifying glass to search for a song in your library.
Click any search result to add it to your playlist.

## Surprise me!

Not sure what you're in the mood for? Click the Uncover button to automatically load random albums from your library.
Uncover has three modes:

- Click Uncover to load 5 random albums from your library
- Shift-click Uncover to load 5 unheard random albums from your library
- Alt-click Uncover to start playing a random album from the ones already in your playlist

## Sing along to songs you don't know

If you carefully collected lrc lyrics files, musicco will load them directly as long as they have the same name as the track currently playing.
Not a collector? Click the lyrics icon to view lyrics for the current track from Chartlyrics

## Full Bio

Where are they from again? What was their second album called? Wikipedia probably knows, and the information is always available in musicco's info panel.
Go on, click it, click links, get lost on wikipedia right from your music player.

## Keyboard Support

Mouse? Boring. You can use most of musicco right from your keyboard.

#### Playback

- ←: previous track
- →: next track
- Shift + ←: previous album
- Shift + →: next album
- ↑: volume up
- ↓: volume down
- <space>: play/pause
- You can also use media keys on
  most multimedia keyboards

#### Main

- b: show/hide browser
- /: go to filter box in browser
- s: show/hide search
- p: show/hide playlist
- i: show/hide Artist Information
- l: show/hide lyrics
- g: show Settings
- Esc: hide all panels

#### Ninja

- Shift + Uncover: add new albums to playlist
- Alt + Uncover: play a random album from the playlist

#### Browser

- j/k: highlight previous/next item
- o: open current selection
- a: queue current selection

#### Touch

- Swipe left/right to go to the next album
- Swipe up/down to change volume
- Long press support and more!

## Authentication and Sharing

You can (and probably should) require a login for musicco. There are two levels of users: guests and administrators. The main difference is that guest accounts do not have the right to update the music library or download individual tracks. When a login is required, your playlists are saved across sessions for your user only.
Want to share a permalink to an album? You can do that by clicking the link icon in the playlist. You will get a link to the album that you can open in a guest session.

## Easy Installation

### Requirements

- A web server with php and sqlite support and access to your music library
- A web browser that supports html audio
- There are no OS-specific requirements, and it runs great on a 500MHz CPU with 32MB of RAM (like a DNS-323 for example)

### Installation

1. Extract the distribution archive into the root of your webserver
2. Place your music in the music folder or create a symbolic link to the root of your music directory to replace the music folder
3. Open up a browser, complete the setup wizard and click on "Update Library". It may take a few minutes for this operation to finish if you have several thousand files.

## Configuration

You can modify the main settings the first time you access the app.

You can modify the configuration of musicco by editing index.php and config.php. and following the instructions in the file itself.

You can currently configure:

- the name of the webapp
- the default language (English and French come built-in, but you can add your own)
- the character set for reading file names
- the name of the folder containing your music collection
- whether or not to require a login to use the app
- the list of users allowed to use the app
- how new music is highlighted
- the default name for album art files
- the extension for downloaded cover art files
- whether to load lyrics from local .lrc files
- whether to download missing album art automatically

## For Advanced Users

#### Automating Library Rebuilds

Instead of manually clicking and waiting for the library to rebuild itself, you can use a cronjob to trigger an update by calling index.php with the parameter builddb
The example below shows how to trigger a library rebuild every night at midnight:
0 0 * * * "/bin/cd /srv/wwwroot/musicco && /bin/php /srv/wwwroot/musicco/index.php builddb >> /var/log/www/server.log"

#### Feature Requests

If you did not find the feature you were looking for, suggest it in the bug-tracker!