Both of us have had lots of experiences with games in the past, and we think they are a great way to engage users while teaching them helpful skills. In addition, we agreed that personal finance was something that we haven't really concretely learned, not having taken any classes in them. We wanted to combine this with a useful tool that could have a broad target audience. Thus, we designed Chorecraft as a way for parents and their children to interact creatively, managing a list of chores or TO-DO items for children that reward them for completing the tasks, granting them with rewards they can redeem for prizes at the discretion of their parents.
What it does
Chorecraft presents two different perspectives for its users: parents are referred to as "questmasters" and children as "explorers," a reference to the adventurous narrative maintained by the overall website. Questmasters will first register their accounts, which will allow them to then register their explorers and associate the explores to themselves. Afterwards, questmasters can then create quests for any subset of explorers to tackle, which grant EXP and coins. Explorers may then login to view these rewards and exchange them at the market for rewards specified by their questmasters.
EXP represents a long-term investment, tracking an explorer's overall progress through their adventures. These are compared within siblings as incentive to do tasks with high EXP. EXP is not expendable. On the other hand, coins are short-term rewards that can be exchanged for rewards, which may be as simple as a cookie. This allows explorers to understand various values, such as saving up for different items and understanding short-term vs. long-term investments.
How we built it
We chose to build Chorecraft as a web application with the goal of making it relatively frictionless to join. We stored our data in MongoDB so that it would be easy to manipulate constantly evolving data models, authenticating users through passport. We used Express to connect the front- and back-end since we both had experience with this in the past. Finally, we used Bootstrap to aid us in making the website look better.
Challenges we ran into
We ran into several challenges along the way. On a logistical perspective, we both had interspersed events the day-of that were mandatory, so we had to occasionally work separately and sync up on what progress was made after, which was somewhat inefficient. We also both don't have a lot of experience with design, so we knew it would be difficult to make the website look really good.
Technically, logging in and registration was difficult to work with, since passport was a bit hard to understand. We wanted to encapsulate all cases of the two so that our application would be foolproof, such as trying to login when already logged in or accessing pages when being logged out. It was difficult to perform quality assurance on all these cases, but we believe we succeeded in this in the end.
Accomplishments that we're proud of
In the end, it was a great accomplishment to get a minimum viable product and be able to focus on making everything look better. Though it was often difficult to debug different steps along the way, we were able to smoothly integrate everything together in the end.
What we learned
We both were able to get lots of experience with React, a really useful and versatile front-end platform. We were also able to improve in our UI/UX skills by trying to understand how to make our interface more intuitive, responsive, and generally nicer to the user.
What's next for Chorecraft
There are still many things we'd like to implement for Chorecraft that we didn't get to do in the given 24 or so hours. For instance, we want to make the platform more secure, so it would be good to implement password hashing and salting. In addition, we think we could take the current model farther, such as using EXP to be able to customize one's profile, which could involve adding things like avatars and more. Overall, there are lots of avenues we could continue going down.
Log in or sign up for Devpost to join the conversation.