Inspiration

Hack with Heart encouraged collaboration and innovative thinking to create a solution that positively and directly impacts an organization well known across the nation. Not only will this hack benefit Relay for Life and contribute to the growth of their events campaign, but it will also promote their foundational principle, celebrating life and giving hope to those living with cancer.

What it does

This program supports all functions related to Relay for Life and provides an easily accessible method of accessing the specific details of all upcoming events while promoting communication between users through a message board feature. Furthermore, its simple, effective design allows for users to access a clear calendar and identify events and socials they wish to attend.

How we built it

We built this website with Python, using Flask as a framework. We used a SQLite database to store and handle requests for user and event data. The frontend and UI aspect was built using a combination of HTML and bootstrap.

Challenges we ran into

One of the biggest challenges we ran into stemmed from our team being composed of generally hackathon beginners or new to tech in general. Although our different backgrounds brought interesting opinions and ideas to the table, we did struggle at the beginning getting our heads wrapped around how we could bring all our ideas to life. Setting up our environments with Flask and Python took much longer than anticipated and the time used definitely played a role in later stages of our design and development process. Other challenges we ran into also tended to cycle around our lack of experience with the technologies we were using and the fact that the majority of us were learning around the way.

Accomplishments that we're proud of

Despite the frustration and many challenges we encountered, there are definitely a number of proud moments throughout the process. The first one was from the design portion of the project. We had plenty of interesting ideas that we felt would enhance the user experience and overall go beyond the original expectations for the app. Once we started with developing, and realizing the level of difficulty involved, we narrowed down our features to those that would be needed for core functionality. A big moment of success was when everybody had successfully set up their environments and we could finally get started with developing the project! As previously mentioned, the set up process took us quite a while and it was great to be able to finally get started.

There were also smaller accomplishments along the way! Some of them were a result of working together and knowing that we had solved a misunderstanding and were finally on the same page. Other moments of accomplishment came from finally getting a piece of code to work. For example, getting the login authentication working was definitely a big moment of celebration for our team!

What we learned

This hackathon was challenging as many people came in with different experiences and levels of expertise. Therefore, as some people were ready to start the challenge right away, others were still installing Python and understanding their way around the programming language, along with Flask and HTML. Collectively, we spent most of the available hours on Saturday, figuring out the system and how we wanted to integrate the frontend with the backend. Therefore, we learned to make better use of our time and have a better plan on how we were going to tackle the issue. Fortunately, our mentor directed us in the right path by telling us to divide the user, admin, and database side, along with listing the various parts required for each section such as event registration and login/authentication. Then we prioritized and ranked each section, split up the sections, and the members of our group aimed to tackle the sections in sub-teams. Another thing we learned is generally how to use Python, Flask, and HTML. We participated in workshops where we learned beginner level Python and HTML which helped a lot in our journey to create our website.

What's next for Relay for Life

To develop this web application even further, we would add functionality with Google services such as using a Google account for login and having an export to Google Calendar feature. We think that this would make logging into the site easier for users and would benefit us, the development team, because we would be able to use Google’s authentication services. Moving forward, we would have to devise a plan for scaling our site for mobile devices in addition to developing an app for Android. We also think that in the future it would be beneficial to sit down with the Relay for Life team at Western to get their feedback to see if the product meets their needs. Following that meeting we could make a plan for further development to improve the product based on their responses.

Share this project:

Updates