Created by: Bryan Min | Jessalyn Wang | Matthew Tan | Ann Luong
From lack of accountability to discouragement to time management problems, people often don't follow through with the resolutions they set for a myriad of reasons. With a positive community for creating, sharing, and following goals, people can increase the likelihood that they will achieve their goals, and meet new friends and form a great support group along the way.
Marathon is an application for creating, sharing and following goals. Users are able to create goals with timelines that match their pace, and discover goals that others have created. If a user finds an existing goal that matches their needs and would like to join in, they can follow along! Once a user is following a goal, the goal has a community space where users can share updates, chat, and give encouragement.
We first went through some low fidelity designs. Then, we split up the tasks into setting up the backed with a REST API using Flask and working on the frontend with React while our designer worked on high fidelity designs for later.
None of us had ever used MongoDB to store data before, and as a whole we had little to none React and Flask experience so there was a learning curve we had to overcome in the beginning of the project as we were setting things up. Additionally, there were a lot of things we wanted to do, and as a result we were pressed for time and didn't get to everything we planned. Originally we had wanted to filter potential hate speech with machine learning, but couldn't get a model trained and running in time.
We're proud that we were able to get a working application out despite knowing very little of the stack. From Matthew's amazing designs to Bryan, Jessalyn and Ann working on the application, we were able to learn a lot and it was amazing to see things come together!
We learned a lot of technical skills from the React, Flask, and MongoDB stack. Additionally, we learned about how to design a product for fast prototyping and the importance of planning exactly which features are necessary for a minimum viable product.
Next, we would like to finish the community forum feature for goals that we weren't able to get to. Then, we would work on filtering hate speech for the forum and implement a goal recommendation algorithm based on user preferences.
