A single page application for creating multi-dimensional audio tracks. Visit the app, Synethesthesia, here and make your own music.
git clone
$ npm install
$ npm start
$ npm start
$ npm test
- For E2E testing suite
$ npm run jest
- For unit testing suite
-
React - A Javascript library for building UI.
-
MIDI.js - An instrumental library.
-
Nexus UI - A library to build music components.
-
Cypress - for E2E testing.
-
Jest - for unit testing.
-
Heroku hosted
-
Travis CI
-
Trello - for project management.
- A single page app for a guest user.
- User can play notes for a single instrument.
- User can set their own tempo.
- A grid for note assignment.
- A play / pause button that when clicked loops the tune through.
1. As a musician,
so that I can lay down a simple track,
I want to visit a page and see a sequencer.
2. As a musician,
so that I can intuitively use the sequencer,
I require each row to be mapped to a single note.
3. As a musician,
so I can make a simple melodies first,
I would like the default instrument to be a glockenspiel.
4. As a musician,
so I can concentrate on making simple melodies first,
I would the sequencer to be set to a 120bpm tempo with a range of three octaves.
5. As a musician,
so that I can use the the sequencer intuitively,
I want to see low range notes appear at the bottom of the grid.
6. As a musician,
so I can see which notes I've selected,
I would like the relevant grid field to change colour.
7. As a musician,
so I can play back the rad tune I've made,
I would like a play button to loop through my song.