Inspiration: We are members of the ACM and this year we have created a new program for CS students to gain tutoring hours by helping other CS students outside of code. We wanted to have an easier way for students and tutors to connect and help each other.
What it does: This app allows users to create accounts as students or tutors. Students can request help for a countless number of subjects and topics while tutors can respond to these questions.
How I built it: We used java and java swing through the IntelliJ IDE to create 31 classes, 15 GUI panes, and over 10,000 lines of code. We created an AI class to identify similar questions by students and be able to respond without needing a tutor to answer. We also created an image recognition system to in the future be able to process images and be able to identify text. All of our collaboration was possible through sharing a repository on GitHub. We were also able to make a data base that connects with OneDrive.
Challenges I ran into: Only one of us had used GitHub before but none of us had never used it to work on group projects. None of us have ever had to build a scalable system that can handle any amount of questions, answers, accounts, etc, so we had to learn how to create files and check for any existing ones to handle errors. Since Java isn't the best for GUIs, our whole event code was created in one GUI, creating the most problems. Only one person could edit this at a time, creating issues where we weren't able to finish all of the features that we wanted to.
Accomplishments that I'm proud of: We successfully made a giant project with a countless number of classes and GUIs. All of the GUIs look very nice and work. Our login system works well and the question and subject request works with lots of subjects given for students to chose from. This is easily the biggest project any of us have done and is the first time we've done a project as a group since in our school classes all work in independent.
What I learned: We learned how to use GitHub, Swing elements, Swing layouts, tesseract, opening and saving files, arraylists, opencv, c++ to java, and more.
What's next for TutorHub: We want to scale this project and be able to implement our AI class and image recognition system. We also want to eventually be able to create events, log hours, have admin views, and have group study sessions with calling through the app. Since this was written in java, we could eventually merge this to an android app.