Inspiration
I've always wanted to build a super simple mood tracker so I came up with the name during mid December, last year. Then I left the project there to hang until I realized I wouldn't be able to complete it in time because I wasn't working on it. 😂 So now it is time to bring the project back from Hibernation!🦾
I believe a lot of people are like me:
- Start a new habit
- Execute it for a few days
- Forget about it
- Back to step 1
Let's call this the deadly "start a new habit" loop.
In order to escape the loop, MoodWiser became a habit tracker with me being the first user. Here I am, participating in a hackathon with a project to make sure I complete the hackathon. How hilarious! 😂
To make things more fun, a praise feature was implemented so that we can receive praises from friends and families to keep ourselves going. Also, it's a good chance to get them to signup and get themselves out of the loop!
That's the story of how MoodWiser turned into a habit tracker to keep everyone out of the deadly "start a new habit" loop!
What it does
- Create Habits
- Track your habits and moods
- Earn praises by sharing the praiser link
- Responsive on all devices
- Supports Light and Dark Theme.
Tech Stack
- HarperDB - The Database known for simplicity without sacrifice!
- Auth0 - User authentication that's super easy to integrate
- Next.JS - The React framework for production
- Chakra UI - UI development that's just deadly simple
- Vercel - Deployment for the app, where the app lives
How I built it
Choosing the stack
- Database - Easy choice and you know why! HarperDB to the rescue!
- Authentication - I didn't feel comfortable going through sensitive information, so I chose a trustworthy Auth0 which also supports login with third-party services such as Google.
- Front End & Back End - I wanted to use TypeScript for everything and manage APIs easily. Loved using React and also heard about the Next.JS for quite some time. Next.JS fulfills all my wishes so I definitely should try it out.
- Deployment - Since I chose Next.JS, Vercel as the main contributor behind it supports deployment for it like no one else. Only a few clicks away from deploying the app's front end and back end automatically. Super easy to setup!
Database
HarperDB exposes a REST API along with example code and a Postman collection to start out, it was super easy to follow. I didn't find the need to use a wrapper library. CRUD operations can be called easily without much hassle.
Below is the how I structured the database to save all the data I needed for MoodWiser to work.

Challenges I ran into
After having the project idea in mind with some basic features, it's time for implementation! It's my first time releasing a side project to the public with the front end and back end all built on my own.
Built With
- auth0
- chakraui
- godaddyregistry
- harperdb
- nextjs
- vercel
Log in or sign up for Devpost to join the conversation.