Coder Social home page Coder Social logo

boombox's Introduction

boombox

A HTML5 web music library with a Sinatra backend. Works like a proper native application.

Note: waveform requires SoX installed.

Setup

  1. Put your music files, folders and cover art (mp3) into public/music.
  2. Create a new user account by running ruby script/new_account.
  3. Run the server and log in.
  4. Open the /reset URL in your browser to force boombox to scan the music dir.

TODO

  • ~(Add a .volume-bar-total to limit the volume bar handle to an inner margin (narrows the bar with a padding of half the volume handle width)? right now it spans too much.
  • Fix scrollbar on table.
  • FF: event binding doesn't work -- the play/pause button doesn't update and the player page doesn't work.
  • Fix DOM memory leaks that happen when we change the page and don't empty out the container. (use .empty()!)
  • Now playing icon (small speaker) needs to be reapplied on the listing mode.
  • Wire up the settings icon and make it pop down a menu (logout, options, invite)
  • Invite new users via mail system
  • Cover art view (thumbnail view), incorporate this tutorial, where the preview would be a tracklist.
  • Cover flow view (add the icon to the view switcher!)
  • Store the preferences (view, shuffle/loop) in the user session and/or user's DB model.
  • AJAX-ify the tables and/or figure out a way to make it work with huuuuge filelists.
  • Rewrite tagger. Support embedded cover art. Cache cover art. Use GridFS maybe?
  • Make a mobile version, swipable tabs?
  • CSS Animations, effects, eyecandy! :3
  • Restyle buttons. Pick a general color scheme and restyle again.
  • Use a tabular layout (or ANYTHING saner) for the multi edit form.
  • Some songs, like LATENYC #1 and #2 are actually longer in time than what the player shows.
  • Extend models to feature Artist and Album models (albums are separate unless artist or albumartist or the sort field matches!)

v2

  • (enable streaming via. MPD?)
  • Playlists
  • Rating system
  • Match up songs that go great together
  • Wire up shuffle and loop. (after we have playlists)
  • Support for AAC, FLAC, ALAC. Is ogg supported?
  • Funky waveforms in canvas via the new audio API's by FF and Chrome.

boombox's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

f3rno

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.