Inspiration
How many times have you been in a lecture in person or online and wished that you could discuss the current topic with someone since you're having a hard time understanding in real-time? How many times have you taken a picture of the whiteboard to look at it later but never ended up studying from it? What about the volunteer note-takers in every course for accessibility? We wanted to create an app that would fix all of these problems and more by allowing more collaboration and connection during lectures and more aid with note taking.
What it does
It is a social media study app, where you can choose courses and for each lecture, there is a channel where students can talk to each other. Furthermore, each lecture has a notes section where they can send pictures of notes to that section and it will transcribe it which reduces the need for volunteer notetakers and helps people who feel like it's tough to follow the lecture in real time while taking notes.
How we built it
We decided to use a MERN stack as it's simple and reliable for storing, processing, retrieving and displaying information. First, we created a basic entity relation of the data that we would be working with ER. We delegated tasks among ourselves to focus on design, routes and the front-end. figma. We eventually started designing the REST requests necessary for the front-end [Ideas][https://res.cloudinary.com/dgmplm2mm/image/upload/v1709472981/jlxo0iwfzqarwyue5azm.jpg]. We used a Flask server to serve as an endpoint for the application to do gpt prompts. We also used Cloudinary to store pictures as MongoDB is not great at storing pictures. We deployed the flask and the express server on an ec2 instance so that the website once hosted on vercel could use the APIs.
Challenges we ran into
Storing user images in a way that wasn't slow. At first we wanted to store the images using base64 URIs that would represent the binary data of the image itself. This proved to be quite slow when sending and receiving requests, and it quickly bloated the mongodb cluster. To avoid this, we decided to store the images in a cloud platform and store the urls to those images in the mongodb cluster.
Setting up the domain There was not much documentation for working with the website for creating the domain name. In addition, as it was our first time working with a domain name, we had a lot of difficulty working with it but in the end it worked out fine.
Setting up the EC2 instance Although it was easy to setup initially, for some reason while the requests to the ec2 worked well with postman, our app when using the exact same requests were not able to get the responses.
Accomplishments that we're proud of
We are proud to have completed the project.
We are proud to have setup our app on the domain name.
We are proud to have designed and set things up from the start to help us succeed!
What we learned
We learned about the importance of designing entities and thinking about rest connections from the start. We learned about the importance of designing front end look from beforehand. We learned how to use Cloudinary in MERN applications to hold images. We learned how domains worked.
What's next for Acadameet
In the future, we want to add many more of the features we wanted to add, such as group creation helpers, group assignment meeting automations and various other features that would make studying or doing group work much easier. We believe that this is important for the future of study
Log in or sign up for Devpost to join the conversation.