🎹 Listen to free MIDI songs, download the best MIDI files, and share the best MIDIs on the web
Latest commit 8d2b78a Dec 9, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
migrations knex: add shared_twitter column Aug 9, 2018
secret opbeat -> rollbar Aug 10, 2018
src 307 -> 302 redirect Dec 10, 2018
static delete unused favicon images Aug 15, 2018
test Remove unused slug code Jun 28, 2018
tools Fix minor bug Sep 11, 2018
.gitignore remove .cache from gitignore Aug 23, 2018
.travis.yml fix travis Jul 26, 2018
LICENSE initial commit Jun 15, 2017
README.md readme cleanup Aug 10, 2018
nginx.conf Add SSL stapling Aug 30, 2018
package.json run standard Sep 21, 2018
supervisor.conf fix supervisor start command May 31, 2018

README.md

BitMidi

🎹 Listen to free MIDI songs, download the best MIDI files, and share the best MIDIs on the web.

travis Standard - JavaScript Style Guide

bitmidi.com

Usage

Visit the live site at bitmidi.com, the wayback machine for old-school MIDI files! Check out some examples here:

Contributing

It's easy to run the code!

Clone the project and install the dependencies

git clone git@github.com:feross/bitmidi.com.git
cd bitmidi.com
npm install

Setup Database

First, copy the sample secret file to a new file:

cp secret/index-sample.mjs secret/index.mjs

Second, run a local MySQL Server on port 3306 and create a database called bitmidi.com.

Don't forget to change the credentials in secret/index.mjs to match what you configured! If you use a different MySQL version than what is specified, then remember to change that, too. If you're running an older version of MySQL, you may need to add a insecureAuth: true option under db.connection.

Run Database Migrations

Once you complete the database setup, run the migrations:

npm run knex -- migrate:latest

Mock local MIDI files

To load the site with MIDI files, you need to have a folder with MIDI files in it. You can get a large collection here or some smaller ones here.

Then, in the project root, run this:

node -r @babel/register tools/import.mjs <path-to-folder-with-midis>

Run the server

npm run build
npm start

Watch and restart automatically:

npm run watch

License

Copyright (c) Feross Aboukhadijeh