Inspiration
While working in various non-profit and student-led organizations, Jennifer noticed how tedious and time consuming it was to find sponsors for events: googling various businesses, researching them, trying to find their contact information, and cold emailing or visiting without any idea if they’d be interested. With the addition of COVID, it became exponentially harder to find sponsorships as it was harder to connect with businesses and with their community. There was not a place that businesses could directly connect with organizations and vice versa. That is why we decided to create Sponify. Businesses interested in promoting themselves and sponsoring community organizations are able to connect with various organizations looking for sponsors. Organizations who are hosting events or are in need of sponsorships can easily reach out to businesses who they know are interested and align with their interests. And thus, reconnecting businesses with their community.
What it does
Sponify is designed to quickly and efficiently connect sponsors with their sponsees, and vice versa. Users can create an account as either a sponsor or a sponsee. Once they set up their profiles, they are visible to all other users: those looking for sponsors, and those looking for events to sponsor themselves. Sponsors set up their profile with their interests (technology, sports, gaming, etc.), and sponsees create posts detailing events for which they want sponsors. Then, both sides can scroll through the board of sponsors or posts, filtering their search with those specific interests. This allows businesses to connect with local organizations and discover a wide range of ways to increase their outreach, and organizations can more easily find sponsors for their events.
How we built it
The frontend was built by Jennifer with HTML templates with Python and Bootstrap. The backend was built by Alex with Flask, with WTForms to receive data from Jennifer’s HTML, Flask-Login for user session management, and an SQLAlchemy database to store user information and information about the event posts. Once users sign up with Flask-Login, their information is stored in the SQLAlchemy database, and they can log out and log back in with their username and password. More data is added to the database when users provide more account information. Sponsees can write posts, which are also stored in the database and are displayed on the website. When users specify filters by which posts or sponsors are displayed, there is an algorithm that determines how close a result is to the filters and sorts all the results according to it (ie, a sponsor with four matching characteristics is displayed before one with two). The sorted list is returned to the HTML, displaying the most relevant results.
Challenges we ran into
This was Alex’s first hackathon, and both of us were almost completely inexperienced in web development, and not too experienced in programming in general. Alex has never used Flask, neither person has done user management or used any sort of database before, and Jennifer had never connected HTML code to a backend program. Figuring out routing in Flask took more time than it should have, as was displaying information from the Python program to the HTML.
Accomplishments that we're proud of
Alex is proud of completing his first hackathon. Both of us are proud of figuring out all the tools we planned on using, as almost all of it was new. It was also very satisfying to finally connect the backend Python to the frontend HTML.
What we learned
Alex learned how to use Flask and login systems. Both of us learned how to use a database and how to connect backend code to the frontend.
What's next for Sponify
One of the first improvements is to implement a user profile system, where users can view the profiles of others and message them directly from our website. Currently, users are limited to seeing the contact information of others, and a direct messaging system in this app would be much more convenient. Another improvement is to add location-based results, where users can specify the city, state, or country in which they are looking for sponsors/outreach, and results better accommodate the geographical convenience of the sponsor/sponsee relationship. This increases the focus on small businesses improving their local outreach.
Built With
- flask
- html
- python
- sqlalchemy
- wtforms
Log in or sign up for Devpost to join the conversation.