Inspiration

We originally got the idea for DawgExplore when we had the urge to start joining a few more events or clubs during our second semester. We looked around and found the UGA Calendar, among other UGA events websites, and realized it was very painful to navigate. We know how important extracurricular activities are in college, and wanted to create a webapp that would allow students to find and manage the events they were interested in in a much more accessible manner, while also allowing for more flexibility than a website such as the UGA Calendar. So, we came up with DawgExplore.

What it does

DawgExplore is a website that provides students with an opportunity to pursue their interests in events around campus, while also exposing them to new ones. A user-friendly interface made up of event cards allows students to easily view the most popular as well as upcoming events with ease, and a bookmark feature allows students to save events they find interesting. Each event card comes with all sorts of relevant metadata about the event to the student, such as a description, date, and location. Students are also able to search for events with a query that provides them with easily accessible and topical results.

How we built it

DawgExplore was built with React, Node.js, TypeScript, HTML5, and JSS for its front-end. For our back-end, we used a Python Flask API which connected our front-end with an SQLAlchemy Database consisting of all of our event data. In order to get our event data, we created a Python web scraper that converted data found in https://calendar.uga.edu/ into an Excel file. In order to create our assets, we used FireAlpaca, and for the purpose of UI prototyping and development, we used Figma. Our app is soon to be deployed on Heroku.

Challenges we ran into

As freshmen, we entered this Hackathon without much experience, and had to learn a lot on the spot. Our UI/UX designer had just started learning UI/UX design and digital art in general, and bought a Udemy course to learn more about Figma. It was our back-end developer's first time dealing with Flask and web scraping, and they spent a lot of time researching in order to obtain a working database and API. TypeScript was completely foreign to one of our front-end developers, so building a full-stack web application in TypeScript using React and Node.js in less than 2 days was a difficult task but we learned a lot from this journey.

One challenge that was quite formidable to us was the creation of an event recommendation system, initially a core component of our goals. While we were able to create a machine learning model using Tensorflow, we quickly realized it wouldn't be much use without real world data that would let us train and tinker with our model as needed. Eventually, we realized that creating a ML-based recommendation system was too large in scope for our project, and we left the idea for other UI changes.

Accomplishments that we're proud of

While DawgExplore might have provided us with many challenges, it also provided us with many opportunities to succeed. We're proud of the fact that we were able to create an app that was successfully able to communicate between the front and back-end, utilizing a database in order to do so. In addition, many of the components we had in our front-end were quite new to us, and each feature was a hassle to make (but well worth it). Lastly, we think our website looks beautiful!

What we learned

We learned a lot! From Flask to Figma to React, virtually every application or language we used was new to at least one or two of us. Each of us learned a lot about how to use these different programs throughout the course of the Hackathon, and this project was an opportunity for us to develop and solidify our skills on these programs.

As every member of our team was specialized to a specific task, generally learning about the task and applying their knowledge during the course of the Hackathon, we also learned a lot about how to collaborate when creating apps such as this, a vital skill as collaboration is an important part of programming.

What's next for DawgExplore

We have several ideas for what we want to take DawgExplore in the near and far future. Firstly, we have various ideas that we didn't have quite enough time to complete. One goal that we were hoping to make progress on was utilizing ML to create a recommender system to recommend events to students. While we had created a preliminary model, we were unable to let it give out useful predictions, partly due to our inexperience with recommender systems and partly due to the lack of data we had. In the future, we hope to create this model and implement recommended events as a crucial feature of our webapp. In a similar vein, we hope to include map/calendar functionality in the near future, as well as an application that can keep track of tickets that are purchased.

In the future, we hope to increase the scope of DawgExplore. We envision this app as an effective way for students in all locations to access events they like, providing far more reach than it has now. We would also like to open up our app for organizers as well as attendees, by having a portal for organizers to list their events.

Share this project:

Updates