Inspiration
We noticed that there was a lack of a student facing service when it came to UC Davis Athletics. As there is always confusion around when games are, how to obtain tickets, and where they are, our team decided to tackle the challenge of making a student facing service for all Aggies!
What it does
GoAgs is a website that allows UC Davis students to access and be notified of all upcoming sporting events. Students can book tickets, check-in, receive text notification, and enter exciting giveaways!
How we built it
We built this project by first creating a backend database using MongoDB hosted on Google Cloud. This database held all information about the users such as their UCD email, password (encrypted), and tickets held. We created a library to store all of our database functionalities to allow us to interact with the database in an organized manner.
For the frontend, we used Flask to handle all of the web development. Flask was used in conjunction with Jinja2 and was very helpful for handling various HTTP requests.
Challenges we ran into
We had never done any web development in Python before. Therefore, Flask and Jinja2 were very new. We also had no prior experience with MongoDB. Additionally, data on game schedules was not easily accessible, forcing us to adapt and resort to other scraping methods.
Accomplishments that we're proud of
We are very proud to say we were able to very effectively learn all these new technologies and complete many major functionalities of our project. In the end, we implemented geolocation services using Google Cloud APIs, text message notifications, a fully-functional login system, and a complete calendar of all known sporting events.
What we learned
We learned a lot about non-relational (NoSQL) databases, along with their pros and cons. Similarly, we got much exposure to frontend development in Python using Flask
What's next for GoAgs.tech
We hope to continue to add functionalities and mainly improve latency on the application.