Code Monkey home page Code Monkey logo

bitmidi.com's Introduction

BitMidi

๐ŸŽน Listen to free MIDI songs, download the best MIDI files, and share the best MIDIs on the web.

travis Standard - JavaScript Style Guide

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 [email protected]:feross/bitmidi.com.git
cd bitmidi.com
npm install

System Dependencies

  • GraphicsMagick
    • Ubuntu: sudo apt install graphicsmagick
    • MacOS: brew install graphicsmagick
  • imagemin-webp > cwebp-bin
    • Ubuntu: sudo apt install libxi6 libglu1
    • MacOS: n/a

Setup Database

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

cp secret/index-sample.js secret/index.js

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.js 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.js <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

bitmidi.com's People

Contributors

colmose avatar dependabot[bot] avatar feross avatar greenkeeper[bot] avatar incessantmeraki avatar tomayac avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.