Inspiration

Staying active in the modern world is a challenge. You have to go out of your way to find time in your schedule to stay fit. I know this personally as an orchestra kid who never played sports in school and struggled with fitness. Meanwhile, my partner Dom excelled in sports from a young age and is very experienced in fitness. This diverse set of viewpoints is what inspired us to create this app. I could provide the experience of someone who wants to become more physically fit but doesn't know where to start, and Dom provides the experience of someone experience in the subject. Ever since I started doing more physical activity I've felt significantly more happy and energized than before, and we want to be able to help others to achieve that.

What it does

FitFolio is a web app that walks users through simple workout routines step by step. Users can add their own routines to customize their experience. Users can login and save their custom routines to their account so they can repeat them at any time.

How we built it

FitFolio uses a Python backend, built with Django, and sports an Angular frontend. The user profile information is stored in an onboard sqlite3 database that comes with Django (and don't worry, the passwords are hashed).

Challenges we ran into

One of the first challenges we ran into was that neither of us had ever used Django, or built a full-stack project using python. Learning how Django worked was tedious at some points, but once we started understanding we were able to make big strides. Another challenge was that neither of us had used SQL before, so we had to learn how to use it in order to store our database information. We also ran into problems with Git not tracking properly, getting the frontend to do what we wanted it to do, and with the internet not working all the time. However, the biggest problem by far was that we decided to add the user feature after building the project around not having users. Adjusting the project to support different users broke the project several times and led to hours and hours of troubleshooting and debugging.

Accomplishments that we're proud of

The biggest thing we're proud of is the progress we've made this year alone. We've been to two hackathons before, but the projects we made were were extremely simple and we weren't really able to meet our goals. However, on this project we were able to learn from our mistakes and make the best project we've made yet, meeting all our MVP goals. Although some things didn't turn out as good as they could have and we struggled significantly towards the end trying to fix our project when it started to break, we are still very proud of what we accomplished. Additionally, we are proud that we were able to learn a whole new framework to do this hackathon.

What we learned

We learned how to use more tools like Django and SQL, and we got much better at handling lots of endpoints to pass data from front to back end and vice versa. We got better at designing and building full-stack projects from the ground up, and diagnosing issues before they become too big. Ultimately, the experience we gained from this hackathon is going to help us be more flexible in the workplace and to be able to learn on the fly, which are vital skills for software developers to have. We also learned a very important lesson about how fragile a project can be, especially in Angular, and how we need to have things planned in much greater detail next time to avoid problems down the road.

What's next for FitFolio

For short term goals, we want to add features such as adding friends, achievements, and potentially adding graphics that teach you how to do more complicated exercises. In the long term, we hope to bring FitFolio closer to the original concept we came up with. We had a lot of big ideas that we ended up having to scrap or cut down due to the time constraints. The original concept involved users building a little virtual gym in the app with cute art, and that every time a user completed their workout, they would earn points they could use in a shop to buy cosmetics for their gym. The idea was that we'd create a calm, relaxing environment that would reduce the stress that people feel when it comes to working out. By gamifying it, we could make people want to work out more to customize their gym and show off to their friends. This was a very overambition pitch for a hackathon, but in the future, FitFolio can become that app under another, more fitting name.

Share this project:

Updates