irlQuests aims to make a boring task list into a fun quest! A user provides their list of tasks and a few rewards that will keep them motivated. As they knock out their to-do's, they earn points and unlock rewards.
AS OF 4/23/23: The deployed app has been taken out of production.
Visit the deployed application here: https://irl-quests.herokuapp.com/
To explore, make an account or use the following credentials to see an example. (email irl@quests.com
/ password fun
)
User Authentication
- Users can create an account
- Once an account is created, users can return and sign in
User Profile
- When signed in, a user is brought to a profile page
- A user sees a list of their quests User stats are displayed:
- how many quests have been completed
- the total number of tasks checked off
- a visual history of tasks completed over the past 60 days
Quests
- A user creates quest and adds tasks and rewards
- When tasks and rewards are created, a point value is assigned
- When tasks are checked off, points are added to the quest's current points total
- When there are enough points, rewards become available
- When rewards are used, points are deducted from the current total
- If a task or reward was clicked by mistake, a user an uncheck a task or "undo" using a reward
- Quests, tasks, and rewards can be deleted by the user
After cloning the repo, install the packages.
$ yarn install
Then initialize the database.
$ createdb life-quests_development
$ cd server
$ yarn migrate:latest
$ yarn db:seed
$ cd ..
Run the application.
$ yarn run dev
Visit localhost:3000
in your browser.
Front End: React, JavaScript, Sass/CSS, HTML
Back End: Node.js, Express, Objection.js, Knex.js
Additional libraries: react-icons, dnd-kit (React), nivo (D3/React) date-fns (JS/Node)
- Move forms into popup modals
- Create edit forms for quests, tasks, and rewards
- Add a progress bar for quests
- Reorganize the point system and create rewards that unlock when all tasks have been completed
- Add Google Calendar integration