Open source, web-based music player for the cloud. [hn]
CloudTunes provides a unified interface for music stored in the cloud (YouTube, Dropbox, etc.) and integrates with Last.fm, Facebook, and Musicbrainz for metadata, discovery, and social experience. It is similar to services like Spotify, except instead of local tracks and the fixed Spotify catalog, CloudTunes uses your files stored in Dropbox and music videos on YouTube.
CloudTunes is a side project of @jakubroztocil who is a bit of a music nerd and who likes to build stuff. In 2012 he decided to create an iTunes-like webapp to make music stored all over the cloud easily discoverable and accessible: hence CloudTunes.
One of the goals was to experiment with a bunch of new technologies as well. Later the side-project has been largely abandoned due to other more pressing projects. In the autumn of 2014 CloudTunes has been open-sourced "as is" (i.e. alpha quality, lack of polish, tests and docs).
The architecture consist of a server and client component. Those two are decoupled and communicate via a JSON REST API and a WebSocket connection:
Web and WebSocket server, worker processes. Written in Python, uses Tornado, Celery, Mongo DB, MongoEngine, Redis.
Single-page app. Written in CoffeeScript and Sass, uses Brunch, Backbone.js, SocketIO, Handlebars, Compass, SoundManager.
Find and stream entire albums from YouTube.
Any album or track you like can be added to your collection or any of your playlists.
Access and stream music that you already have in Dropbox from any computer. Fast indexing and realtime updates.
Organise your collection with playlists. Drag and drop tracks and albums on a playlist to add them. You can create playlists containing both tracks from your Dropbox and music videos from YouTube.
Scrobble and play your personalised recommendations.
- Drag and drop
- Keyboard shortcuts
- Browse view
- Sorting, resizing
- Support for 10s of 1000s of tracks in collection
Clone this repo and follow instructions in:
BSD. See LICENCE for more details.