Beatme is a beat/instrumental file management application. Users can upload beats/instrumentals to store online and have access to them anywhere.
Link to project: (https://beatme-production.up.railway.app/)
Tech used: HTML, CSS, JavaScript, Node.js, Bootstrap, MongoDB, Cloudinary, Express, Mongoose, Passport, and Heroku
I used MongoDB to store the title, bpm, audio link, and tags. The audio files are stored on Cloudinary. I utilized EJS as the template language to generate the login, signup, profile, home, feed, and main pages. JS allows the user to interact with the pages. I used Bootstrap for the CSS styling. Express is used for the server creation and Node JS is used for the backend. I used Passport as the authentication middleware to authenticate requests. I utilized Mongoose to create my user and audio schemas. And finally This app is hosted on Heroku.
I definitely enjoyed working on this app because it is something that the music producer community could use. I know because I am apart of that community. Having a cloud based file management app that is tailored for beat/instrumental storage would provide a great alternative to other file management apps.
Creating this app has helped me understand EJS and it's syntax, Understand CRUD when making server requests, Understand MVC and how the flow of a application makes requests and responses, and How to display the correct user feed that displays the user's uploaded beats/instrumentals.