Midi Composer - An App for Music

Midi Composer - An App for Music


Stage 2 Project (Out of 3 Stages)


This project was developed by AttainU Students.


Live Project Link

Github Link


About – Through this project, we aimed to bring the Web and Music together. We started with an idea of developing a web app in which users will be able to create music content and showcase them on an inbuilt platform.


Why This – Everyone is somehow got music involved in their lifestyle, we are also one of the many peoples who get inspired by music and as a developer, we tried to integrate music and development together. So we came up with an idea of a MIDI Composer and it did work out well, although we failed at achieving some of the features which we had thought of integrating into this project but as we continue to work on this we can make it better.


Technical Insights –

Tone.js –Tone.js is a library built on top of Web Audio API. We used Tone.js because it is rich in features and methods to perform musical operations, tracking time and syncing call-backs is also handled very efficiently in Tone.js. We used Membrane Synths to build our step sequencer. And it worked out perfectly for our use case scenario.


Express.Js – For server-side development we used Node.js with Express.js and we used express because it efficiently handles the routing and sessions and can easily be linked with the database we used. Handling of Requests and sending a response to clients is quick and efficient in express and of course it’s JavaScript that’s icing for a cake.


MongoDB – For database, we used MongoDB because of its high performance, high availability, and automatic scaling, it uses BSON as data type and matches perfectly with JavaScript environment.


Hbs – For front end, we used Handlebars to render our HTML pages we used hbs because of its dynamic behaviour and fast performance.


Future Improvements –There is a vast scope for scaling this project like we can convert this app in a social media platform where music will be used as the content. Further, we can integrate a DAW for users so that they can make music on a feature-rich platform possibilities are infinite.


Project Demos by Team of Students