Inspiration
We were first inspired by already-created matchmaking apps such as Tinder, RoomSync, and other matchmaking platforms. As our team thought about how teams were formed in hackathons we instantly thought of making this website application to help promote instant team-making.
What it does
By simply having users sign up for an account by mentioning their GitHub username we have developed an algorithm to match similar users in a database with complimentary skills (e.g. if the top languages for a certain user are in in HTML/JS/CSS it means they're frontend, and if another user's is in Java/GoLang it means that they might be inclined to backend. Thus, for a hackathon these two would make a complimentary pair, and whenever each user shows up on each other's screen, they can choose to swipe right or swipe left to make a match or discard the match.
The algorithm pulls public GitHub data about a user using the GitHub REST API to obtain the statistics about the user's profile.
How we built it
Using python as our primary scripting language, we have created the main backend algorithm to match users with the highest-counted practiced language that is sourced from GitHub API with their given user_id. Next, we connected our backend code with our database hosted by CockroachDB to store users' information which can be easily retrieved and shown on the front end. Our frontend is created entirely of Bootstrap JS which is shown to the users to obtain their information and show the results of our backend algorithm.
Challenges we ran into
Some problems we have run into are learning the process of new languages we have no familiarity with especially Javascript, using CockroachDB for hosting our database which we created from scratch and parsing the GitHub API JSON object file.
In addition, none of us were familiar with gluing front end and backend together so we had a difficult time with actually getting responses from both sides. We struggled between understanding fetch(){} in the JS rendering side of things as well as the API endpoints.
Accomplishments that we're proud of
For this project, there are many accomplishments that we are proud of from making the database from scratch to creating a webpages using the Bootstrap framework. In addition, we did get some basic communication between the frontend and backend with the signup page, and this is a huge accomplishment for us because we struggled with it for a while. Furthermore, we started out with React, but found that it was beyond our scope of knowledge, but we are also proud of making some progress with learning that library.
What we learned
We definitely learned and progress through our programming languages skills like Python, SQL, and Javascript. New modules like Flask, JSON, and psycopg2 were learned in the process.
What's next for Gitogether
This project can be further improved by changing the backend algorithm to not only match with just the practiced language count but also multiple factors such as the number of repositories they have which counts as how experienced are the users and other factors to judge compatibility with other another user.
Built With
- api
- database
- javascript
- python

Log in or sign up for Devpost to join the conversation.