🎹 Web editor and player for the bach music notation
Minimalist web editor for the bach
music notation that allows you to learn and play with bach
!
bach
is a semantic music notation that makes it easy to define music or other rhythmic timelines with only text.
Check out the documentation and guide for a full introduction to bach
with supplemental example code.
- Write your
bach
tracks with instant audio and visual feedback - Easily access resulting
bach.json
data and other useful track information - Import and export entire track collection archives
- Optionally play over custom audio files
- Validation messages to ensure track can be played musically
- Useful player and usability preferences
- Musical metronome
- Run stand-alone or a-la-carte, using only the components you need (:construction: in progress)
- Piano is currently the only supported instrument and is limited to octave 2, due to complexities with acquiring open-source samples
- All tracks are stored using browser storage APIs, so there is currently no centralized persistent back-end
- Syntax highlighting is in the early stages, and all validation happens during save
First make sure you have Node and NPM installed using at least these versions:
node v15.12.0 (npm v7.6.3)
Then install the package:
npm install
npm run serve
You will also need to run the audio server to hear playback:
npm run serve:audio
npm run build
npm run test:unit
npm run lint
MIT