Inspiration

Get locked in with LockedIn! LockedIn is a student's perfect Matchmaker built for students to swipe left or right on personalized study groups found near them.

The best study environment is one students can choose for themselves. To some students, it can seem impossible to find peers who want to study the same topics at the same pace as them. The wrong study partner can make students feel overwhelmed or repeat reviewing material they've already mastered. Here, we introduce LockedIn, a project designed to support students as they create their own communities to encourage learning, collective growth, and meet new peers.

What It Does

LockedIn is a web app that allows users to create and join study groups. Students can choose their preferences based on what kind of study group they would like to join. These parameters include students' preferred location, when they are free to study, what class they are studying for, and what topics they would like to focus their studying on. The website will use these chosen preferences to match students to study groups that most closely match their choices. Students can look through these groups that fit their preferences and choose groups to join based on the description of each study group. Students can create a profile in this website and go back to view a list of their joined groups. If there are no study groups that fit a user's preferences, they are able to create their own study group that will be available for other users of the web app to join.

How We Built It

The design of our web app came first. We outlined the website mappings, laid out a step by step detailed plan for how we were going to proceed with the full-stack website, and then designated tasks accordingly, communicating with each other through the entire 48-hour hackathon and sharing files through Github.

For the frontend, we used HTML, CSS, and JavaScript to code the visible pages of our website. The user first either logs in or creates an account. This takes the user to the main page where they can chose their study time and topic preferences using a series of filters. These filters are used to match users to potential study groups for the user to either join or reject in a fun way through swiping left or right! Our back-end was built using Python, Flask, Node.js, and SQL, where our filters are used to calculate the best study group matches for users and are presented in our unique tile swipe design. We built databases that record user data, from their study preferences to their personal contact info, entered when creating a profile and a password encrypted in our database.

Challenges

The few challenges we faced made up for their small numbers in intimidating difficulty. First, the wifi connection was a serious problem, especially during the first part of our project. We could not work as quickly and often got interrupted because the wifi either did not connect, or was slow enough to hinder our progress. Another challenge we navigated was troubles with GitHub. We ended up cloning a new repository with each team member having their own branch, which they would work on and then push their changes to our collective main branch. This worked well moving onwards. Other challenges we ran into were with implementing our back-end. Implementing Gemini AI with uploaded files was a new concept to our group; however, we were able to collectively design the helpful keyword summarizing feature into our app. Overall, we all agreed that we were able to learn much from this project, as these challenges made us dig deeper into how we built our project and could make it a stronger app for our community.

Accomplishments that we're proud of

We built a full front-end interface with engaging animated graphics for swiping tiles of study groups left and right. Additionally, we were all able to work on a fully interactive full-stack website, which we considered a great feat because of each of our focused specialties in back-end/front-end. The databases and encryption of passwords on the backend are achievements we are spent a lot of time building. We were surprised about the amount of work that we were able to get done given the time constraints, this being our first hackathon for two of our members, and the additional challenges we faced along the way while creating our project.

What we learned

We learned quite a lot about GitHub and Git through the shared repository and our efforts with pushing and committing to main. We learned to create individual branches for each member to work on We learned more about front-end development and how to format websites using HTML, CSS, and JavaScript. JavaScript is a language that some of us were unfamiliar with, so we were able to learn more about it through implementing a database and animations in our website. On the backend, we learned more about databases, SQL, and Node.js while working on storing user input data when they create their profile and choose their preferences. As we prepare for similar events or hackathons in the future, we are planning on further developing our range of experiences in different web/app development frameworks and preparing to plan and brainstorm a greater amount ahead of time to make even better and exciting new projects.

What's next for LockedIn

Continuing with improve our LockedIn project, we plan to further optimize the UI/UX Design, and improve our matching method for the filters of student preferences to already existing study groups stored in a database. We plan to add more overall functionality to the website. Some features that would improve functionality would include allowing users to edit their own profile, and for users to see and edit their list of study groups in the My Groups page. Additionally, our Google Gemini integration can be further trained to be a better matching tool for students. We want to continuously add improvements to LockedIn to make it a project that is well made with many features that can be added with time.

Share this project:

Updates