Inspiration
Just before HelloWorld kicked off, our organizers were diligently awaiting and getting things in order. They hadn't had a chance to grab breakfast, and it seemed like they might have gone without it if they hadn't been informed about the complimentary donuts and coffee generously provided by Purdue Libraries.
This made us realize that many people aren't aware of the exciting events at Purdue University. Knowing how much people like free stuff, we decided to make a simple website that gives all the details about these events.
What it does
This program is created to assist Purdue University students and community members in finding and getting free food and other items on or near the campus. It also offers options to set text reminders and locate the place in case they're unsure of its whereabouts.
How we built it
We broke down our project into three main steps:
- Creating an initial Tkinter UI, which prompts the user with a decision to choose between free food or free stuff.
- Based on the decision, we scrape data from the internet, trying to find the best possible events for the individual.
- The final step is creating a second Tkinter UI, which provides the user with the necessary details about the events and further provides them with an option to set a REMINDER or to graphically see where the place is on the Purdue MAP.
Challenges we ran into
- Plotting the location coordinates onto the map required extra learning time.
- Using new technology and managing repositories on GitHub was an informative journey for all of us.
Accomplishments that we're proud of
- Using the web-scraping tool to efficiently extract details about events.
- Drawing upon the location and further plotting it on a graph for the user.
- Reminding the user, about the event he/she chose via mail.
- Creating an attractive user-friendly interface.
What we learned
- Web Scraping
- Implementing APIs
- Python Libraries like smtplib, BeautifulSoup, Selenium, and Tkinter
What's next for Purdue Free Loaders
Additionally, our goal is to enhance the user experience by offering a broader selection of filters. We plan to implement an Object-Oriented Programming (OOP) approach, treating each user as a unique object. This will enable users to select their events for the month and receive individualized reminders for each of them.
Log in or sign up for Devpost to join the conversation.