In my mind, application development always boils down to two things: the What and the How. In this post, I'll be describing the former, which in my opinion, is way harder than building the thing itself.
One of the things I found difficult when shifting into working from home was adjusting the routine that I've been in for years. Granted, I'm very thankful to be able to work from home, so it's not the worst situation to be it, but it was clear that many people, including myself had trouble adjusting at first.
That's why for this hackathon I'll be building an ultra-simple habit tracker in the form of an intuitive, chatbot interface. The purpose of the application is to allow users to track habits in a way that isn't so "admin-dashboardy". Instead, the interface will be in the form of a chat app, with fun interactions and animations to make tracking habits feel good.
Now that we have an idea of the purpose, let's get into the good stuff - requirements. A good starting point is to break it down into two categories: the needs and the nice-to-haves.
- The web app needs a chatbot interface that feels natural to use
- A user should be able to make an account
- A user should be able to login/logout
- A user should be able to create/edit habits
- A user should be able to able to mark a habit as completed
- A user should be able to view a summary of their habits
- Ability to set reminder notifications
- Downloadable as a progressive web ap
Now that we've got a shortlist of features, we can start taking a look at the How: what we'll use to build the darn thing.