One of our team members had mentioned his local gym's new COVID-19 system of reserving sessions to workout. It involved a very cumbersome process of having to make a phone call at a specific time without even knowing if the limited space in each session had already been booked. We sought to address this pain point with the modern way; a website that lets you make online gym reservations which can readily display information to you, instead of having to awkwardly make phone calls.
What it does
A system to facilitate patrons reserving gym facilities and classes during limited capacity and high demand.
Users can register for an account with the website so they can access its booking features. Once registered and logged in, users can view available sessions and register for the ones they are interested in. They can also view a list of upcoming sessions they are registered to, and choose to cancel them if they like.
How we built it
We used Flask as the web development framework for our project. For our back-end we used sqlite3 via the SQLAlchemy package. The entire project was hosted on Heroku once complete.
Challenges we ran into
We were all relatively new to web development, and the frameworks we had used were not in Python or with Flask. This made building the website a difficult challenge but it provided for a great learning experience and an excellent introduction to Flask.
Accomplishments that we're proud of
We managed to figure enough about Flask to get a full website running (including a database backend and cloud hosting) in the short period of time given.
We also were able to take advantage of GitHub's team resources to collaborate and work on multiple components of the project simultaneously.
We maintained clear communication throughout, helping speed up the process and resolve any issues we came about.
What we learned
We learned a lot about Flask and how an end-to-end website deployment looks like. We also learned more about GitHub's team features which came in handy during the hackathon.
What's next for GymReservation
We think that we can definitely polish up the website some more.
We also want to add an email server so users can receive email confirmations for upcoming features such as username changes and password resets.
We want to add more detail to the pages, so users can see who else is attending and click on a gym to view more details about it.
Lastly, we want to make use of unit testing frameworks to make sure we have everything covered.
GitHub URL: https://github.com/teamCardinal/gym_reservation