How Can I Build a Habit Tracker App as a Beginner in Python?
Asked by
TechieSam42
Hi everyone! I'm a second-year computer engineering student and I'm currently diving into Python after some experience (not too great) with C++. I have this idea for a habit tracker app that I want to host on my own device. The concept is to create a list of 'dailies' that I complete each day, and if I finish them along with additional tasks, I get a box that changes color based on how intense my day wasโgreen for light, yellow for medium, and red for 'holy moly!'.
I'm not sure if this is even feasible since I'm still learning, and at this stage, all I've done is put together a menu using a dictionary. I'm looking for advice on what tools and technologies I can use to start building this application, especially for someone who's a beginner.
Answers
Great idea for a project! First, think about what type of application you want to createโweb, console, or GUI? Since you're aiming for a habit tracker that involves visual feedback with colors, a GUI would likely be the most satisfying approach.
You could use Tkinter which comes built-in with Python as an easy starting point, or if you're looking for something a bit more flexible, consider Pygame. Both have plenty of tutorials available to help you get started. For storing data locally, JSON files are simple to use, or you could go with SQLite if you want to get more advanced later on!
Reply to this answer
Sounds like a solid project! If you want it to run on your device, you might start with a command-line interface (CLI) app, which can save data in a JSON file or use SQLite for storage. Once that's up and running, you could create a basic GUI with Tkinter or perhaps experiment with creating a lightweight web app that runs locally. Focus first on figuring out how you'll calculate the intensity of your dayโthat logic will guide the design. What part is most confusing for you right now: the structure of the project or the interface itself?
Reply to this answer
Add your answer
Answers are reviewed before publication.
TechieSam42: Thanks for the insight! I get that a CLI app is mainly text-based, which is a bit new for me. I'm coding everything in VS Code, but what I'm wondering is how do I go about setting up the front end? This is the first real application Iโm making, and I really want it to be useful since a lot of current habit trackers are either pricey or lack features I need.