Inspiration

This project was inspired by several places. Over the past couple of months, we noticed that many society discord servers have a "looking for group" channel, so we decided to sort of centralise it all into one website where people can meet up and create groups for any subject. We were also partially inspired by DevSoc's Freerooms, trying to incorporate the idea of helping people meetup and study. Same with study apps that try to connect people through studying together, whether that be online or in person.

What it does

GroupFinder is a website where you can look for study groups for different subjects, to more easily find people to study with. It features the ability to create and join rooms, chat inside rooms that you have joined to organise meeting times, etc. There is also a short description for each group and a location of where the group will meet up.

How we built it

The application was built with Flask, using Python and SQL to manage the backend and database, and HTML/CSS + JavaScript for the front-end. In particular, Bulma was used as the framework for the front-end. For the backend, Gevent was used for websockets and the whole application was deployed and hosted using Railway which provides a 30 day free trial. We built the app by collaboratively working on the project using Git, with each member having a different role as to take advantage of each member's specialisation.

Challenges we ran into

One of the biggest issues was figuring out how much we could get done in the short time frame. Since no one in the team has done a hackathon before, we weren't 100% sure how we could judge how much time we had to implement a certain amount of features. Another issue was figuring out how to deploy the app so that people online could use, since our main experience with Flask had just been on local developer servers which don't actually connect online. Overall, it was quite a new experience to be working in a team-environment for programming specifically, since most of our previous coding projects have been individual. But we all learnt a lot of how to collaborate, especially using Git, to help us in future projects.

Accomplishments that we're proud of

Completing the project on time. Honestly, I am personally proud of actually watching an idea come to fruition. It was quite a surprise how quickly a project can progress from an idea, if given the right motivation to start. I'm also proud of actually deploying this app to the internet, so that anyone can join. It was not as complicated as I thought to get it set up.

What we learned

We learnt many skills in respect to teamwork and working in an extreme time constraint. Our knowledge of Git was deepened, as we had to rely on it to collaborate on the project together. Additionally, we improved our teamwork and collaboration as we delegated different tasks to different team members based on their skills. Additionally, we honed our skills in website development, whether it be for back or front end.

What's next for GroupFinder

In terms of where this project goes next, we could integrate the DevSoc API into the website, as we could pull course codes directly from UNSW timetable data to auto-populate our tags, and use room booking data to suggest meeting locations when someone creates a group. That would make the whole experience feel more native to UNSW. Additionally, I believe it would be nice to add a profile system where users can personalise their own profiles, and maybe a friending system so that friends' study groups are prioritised when displayed on the dashboard. One more feature we would like to add would be a google maps attachment to a study group post, e.g. a map to show where the study location is.

Built With

Share this project:

Updates