Inspiration
Our inspiration behind this project was to first come up with a project that could relate to college students directly. We thought about dining options, job openings, and even just being able to meet people. Eventually, we ended up working on work/project opportunities available as that was something me and my partner I both believed was an important aspect for college students. Our project captures the idea of a night market by searching for people rather than goods.
What it does
IdeaConnect creates an account for users and stores their info. Once logged in, users have a choice of submitting a project for others to look at or searching for projects they would like to work on. IdeaConnector then links those with projects up to those with knowledge, allowing people to get help or find collaborations for the projects that are most important to them.
How we built it
Using a React frontend, we established interaction with an Express server which exposes a SQL database. We utilized node.js to create and interact with our SQL database. We chose JavaScript because it allowed us to connect the frontend with the backend development easily and rapidly. Our MySQL database consists of two tables: one for storing a user's account info and applied projects, and another for storing all pitched project ideas.
Challenges we ran into
Some minor challenges were getting a proper MySQL server running and being able to create, read, and input data into a database with 2 tables. Some of our biggest challenges were trying to implement Georgia Tech Identification, which we were unable to do because of uncontrollable issues (one must verify an application with the GT tech department before using the SAML2 login service), and trying to overcome some tech debt issues with architectural issues. Since this was our first time using React, there were some issues getting to know the "right" ways to do things.
Accomplishments that we're proud of
Being able to create a MySQL database and interact with it in various ways of inserting, updating, and retrieving data. Being able to create multiple Node.js scripts to implement our SQL commands. Successfully being able to use an appealing React frontend with an Express server that is capable of taking in user input and storing it.
What we learned
Despite rushing to finish some aspects, make sure you aren't using hacks because they will end up costing you more time to find and fix down the road. Prior to this, we used SQL in Python scripts and now learned how to convert those into node.js scripts.
What's next for IdeaConnect
Adding a Locations table into the SQL database so that we can group projects by their location and make it easier for users to find projects local to them. Make sure we create insurances so that our code isn't easily broken by certain users, including sanitization and validation of inputs. Creating a "Reputation" category to prevent plagiarism and ensure only qualified applicants can apply to help out or mentor.
Log in or sign up for Devpost to join the conversation.