Skip to content

linenoise/io

Repository files navigation

linenoise.io

This is the codebase that runs Danne Stayskal's music site. It is developed using nanoc and rsynced in static form to the server.

Installation

Prerequisites: OpenSSH, Rsync, Ruby, RubyGems, Ruby Version Manager, and Bundler.

First, clone this codebase

$ git clone git@github.com:linenoise/io.git linenoise-io

Second, accept the RVM version and gemset, building Ruby 2.2.2 if you need

$ rvm install ruby-2.7.4

Finally, install Bundler and the rest of the gemset

$ gem install bundler
$ bundle install

At this point, you're ready to make changes.

Maintenance

This codebase uses nanoc to build a tree of static HTML, CSS, and JavaScript resources to be uploaded to the server. Assets (such as images and recordings) are included in this final build. Once Bundler has nanoc and friends installed, running a maintenance server is straightforward:

$ bundle exec guard
$ bundle exec nanoc view

This will automatically compile any changes made to the build and make them available through a lightweight webserver running at http://localhost:3000/.

Uploading a Set

Play music. Dance (optional, recommended). Record the set (required).

Materials:

  • MP3 recording (320 bitrate) of your set.
  • TXT track listing text file ("0:00 Artist - Track\n"...)
  • TXT genre listing (tech.house, dub.techno, uk.garage, ...)
  • HTML description of the set (when, where, link to event ...)

Get it onto AWS:

  1. Login to AWS S3.
  2. Upload the set.
  3. Make it public.
  4. Set metadata: Content-Type is application/octet-stream and Content-Disposition is attachment. This should force most browsers (but sadly not all) to download rather than stream the set.

Get it onto Linenoise.io:

  1. Clone this repo.
  2. Add an HTML file in content/sets (just copy the structure from a different release). You'll need the title, date, genres, download link, description, and embed code.)
  3. Add above file to Version control (git add content && git push origin master;)
  4. ./push

Deployment

To deploy, make sure you've got your deploy keys in place, then run:

$ ./push

Easy as pie.

About

Danne Stayskal's music site

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •