Transcriboid is a musical training web application that I developed over the summer of 2019. It generates melodies by analyzing patterns in midi files, challenges the user to discern the rhythms and melodies using only their ears, and gives them feedback on how accurately they transcribed the melody. You can check it out at transcriboid.ethanleba.com.
This repository contains the front-end interface for my project transcriboid, written using React.js and Bootstrap. It takes in data from the backend using a RESTful API, plays the melodies, and provides the sheet music interface.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
NPM - Can be installed here.
To build the project in a development environment, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
You will also need to set the proxy in package.json to point to your RESTful API.
The page will reload if you make edits.
You will also see any lint errors in the console.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
This project is deployed on Heroku, using heroku-buildpack-static. No changes are needed to deploy the project on Heroku. You can specify your own backend by modifying the proxy in static.json.
- React.js - The web framework used
- Bootstrap - CSS library
- Tone.js - used for audio display
- react-router-dom - used for moving between pages
- Axios - Used for HTTP requests
- Snap SVG - Used for SVG display
This project is licensed under the MIT License - see the LICENSE.md file for details