Study Sphere












A platform where students can share and access notes, enhancing collaborative learning.
Features include user authentication, note uploading, and a search functionality to find notes by subject or keyword.
Developed a note-sharing web application with a Vue.js component-based frontend and Vue Router for navigation.
Implemented Firebase Authentication with custom Express middleware to verify user tokens for secure API access.
Built RESTful endpoints to upload, retrieve, download, and delete notes, including prefix search by course codes.
Integrated MongoDB for data storage with Mongoose schemas and Firebase Storage for file hosting.
Learning Point : Upload the form as multipart/form-data, Multer parses it and store in RAM (file buffer). Create a blob (pointer to storage object) from the bucket. Create write stream to open connection to Firebase Storage. Create Error and Finish Listeners. The upload then starts when you blobstream.end(file buffer).