- Identify tunes to learn
- Search for tunes based on tune characteristics
- Enable practicing tunes by playing multiple tunes as a set
- Create a version that will work seamlessly on mobile
- Be able to recognize tunes
- Suggest chords for a tune
- Process audio input in real time
- Allow for exporting tunes in many file formats (abc, MusicXml)
- Define sessions by name and location
- Update session data live using wave file (autorecognition)
- Interface for building a set of tunes
Install node.js with all dependencies.
Change directories into the root of this repo on your local.
To use the relational database, install sqlite on the server.
npm i express sqlite3
To use the graph database, install neoj4 on the server.
npm install neo4j-driver
Start the server.
npm run start
Use Ctrl-c to stop the server and restart if you changed any js.
The schema used for the relational database can be visualized with this diagram.
After prototyping the website using this schema observable lag was seen even for one user. This illustrates a need for some other way of generating the reports.
This relational database is also not suited to filtering the counts by date range.
Currently working to create a schema. The neo4j database is hosted on neo4j+s://a36f2166.databases.neo4j.io