Building a Simple Goal Tracker for 2026
Building a Simple Goal Tracker for 2026
Like many people, I start each year with good intentions: exercise more, build better habits, stay consistent. But tracking these goals often becomes a chore itself. Apps are bloated with features I don’t need, spreadsheets feel tedious, and paper journals inevitably get lost.
So I built something minimal that actually works.
What It Does
Goal Tracker is a straightforward web application that does one thing well: it lets you mark when you’ve completed a daily goal. Nothing more.
You open it, see your goals (exercise, treadmill, whatever matters to you), and click a button to log today’s entry. One entry per goal per day: no gaming the system, no elaborate scoring. Just a clean, simple record of what you did and when.
The dashboard shows you:
- How many times you’ve completed each goal
- A chronological list of all your entries with timestamps
- A disabled button once you’ve logged today (prevents duplicates)
Why I Built It
I didn’t need gamification, leaderboards, or social features. I needed something that would get out of my way and let me focus on consistency. The constraint of one entry per day is intentional, so it mirrors how habits actually work. You either did it today or you didn’t.
The tech stack (NestJS backend, React frontend, PostgreSQL) represents tools I enjoy working with. They’re mature, well-documented, and enable rapid iteration. Running PostgreSQL in Docker keeps development setup simple and consistent.
What I Learned
Building even a small project reinforces fundamental lessons: database constraints prevent data integrity issues, thoughtful frontend validation improves user experience, and maintaining simplicity requires actual discipline. It’s easy to add features; it’s harder to justify keeping them out.
The project runs on a Raspberry Pi at home: self-hosted, with no cloud dependencies. Access is restricted to my local network, requiring either WiFi access or Tailscale when I’m away. It’s private by default, which aligns perfectly with my personal data preferences.
I built this with AI assistance (Claude Code), and that’s worth mentioning: not as a disclaimer, but as acknowledgement of how my workflow has evolved. Ideas that used to remain theoretical now become actual projects. The friction between “I want this” and “this exists” has dramatically decreased.
My Progress So Far
Since January 1st, I’ve been using Goal Tracker daily. As of March 21st, that’s 44 unique days of activity out of 80 days - that’s 55% consistency.
I track two goals: workouts at the gym with a personal trainer (a friend) and treadmill sessions. The breakdown shows 27 gym sessions and 18 treadmill sessions, with some days featuring both activities. Nothing revolutionary, but watching those numbers increment provides just enough motivation to keep coming back.
Try It Yourself
The project is open source and available on GitHub. The repository includes:
- Complete source code for both frontend and backend
- Docker configuration for easy database setup
- Clear installation and deployment instructions
Whether you’re tracking fitness, learning goals, or creative projects, sometimes the simplest solution is the most effective.