Skip to content

cbrake/mp3-wrangler

Repository files navigation

MP3 Wrangler

Web application that can be used to browse and download mp3 files from Amazon S3.

screenshot screenshot-2

Features

  • builds a database of tracks and albums from mp3 files in a S3 bucket
  • displays listing of albums
  • drill down display tracks and ID3 tags
  • download individual tracks
  • download select albums as a zip archive

Install

  1. Upload mp3 files to a S3 bucket with a directory structure of:
    • (Genre) -> (Artist) -> (Album) -> individual mp3 tracks
  2. On a nodejs capable server:

Operation

This application uses the following components:

  • server
    • nodejs
    • expressjs
    • nedb
    • aws-sdk
    • musicmetadata
  • client
    • bootstrap 3.0
    • react 0.4.1

Key files include:

  • app.js (server side nodejs app)
  • public/index.html (main html file)
  • public/js/main.js (client side application)

The rest is just bits of above components.

On startup, a listing of all files are fetched from the S3 bucket. If the mp3 file is not located in tracks.db, the file is fetched and the ID3 tags are parsed and stored in tracks.db. After the process of fetching any new track info is completed, the albumns.db is updated which contains album information.

Roadmap

  • create index of S3 key and ID3 tag data
  • display based on tag data instead of file structure
  • select albumns/tracks/artists and download in zip format
  • add users and logins
  • periodically rescan and look for new keys, if new keys found, extract ID3 tag data
  • search features to search for tracks based on ID3 tags
  • page display of album data
  • admin page
  • integrate mp3 player such that albums can be played in web browser

Contributions: are welcome, use github.

License: MIT

About

nodejs/html file browser

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published