really keep constant together with your targets for 2026? This yr, I’ve determined that I don’t simply need a record of targets. I need a imaginative and prescient board backed by actual metrics to trace my progress month after month.
The issue I’ve been going through these previous couple of years is fragmentation. There are one million apps on the market that can assist you monitor finance, coaching, or day by day habits, however I may by no means discover a single, centralized tracker. Even more durable was discovering one thing that would scale: a system that follows a objective whether or not it’s day by day, weekly, month-to-month, quarterly or yearly.
Because of this, I made a decision to construct my very own objective tracker. This app is only one instance of what works nicely for me, however the intention goes past this particular implementation. The objective is to share the product considering behind it: design a system that aligns metrics, visuals, and construction in a approach that really helps brief and long-term targets.
Earlier than leaping into the code, it’s vital to know the design choices behind the app.
The Design
The logic
In actuality, our ambition operates on totally different scales. Most trackers fail as a result of they deal with a single decision (typically monitoring day by day habits). In my case, I wanted a system that would assist totally different frequencies of targets so i categorized my goals into 2 classes:
- Excessive-frequency targets (day by day / weekly): These are issues I need to do on a day by day or weekly foundation. I name these habits as a result of they require issues to be checked rapidly and with excessive frequency.
- Low-frequency targets (month-to-month / yearly): These are issues I need to do on a month-to-month or yearly foundation. I name these strategic targets as a result of they require much less repetition, however extra path and changes over time.
The app I designed was meant to seize all of those frequencies in a single system. This makes it potential to observe execution each day, but additionally keep an outline of progress all through the entire yr.
The Person Interface
When it got here to the interface, I intentionally averted complexity. I’m not a UI knowledgeable, and I didn’t need an app stuffed with buttons, menus, or pointless interactions.
As an alternative, I selected a grid-based matrix. This permits to easily test bins for habits or accomplished targets. In knowledge visualization, an empty cell is simply as informative as a stuffed one. Seeing gaps within the grid turns into a robust and really concrete sign. It instantly reveals the place consistency is lacking and helps adjusting.
The Structure
For this challenge, I had two vital necessities for the structure:
Zero Database Administration: I didn’t need to set up something regionally or handle servers. I selected Neon, a cloud-free PostgreSQL database, to behave because the again server of the app.
Python as the one programming language: I needed to make use of a language I grasp. Because of this, I selected Streamlit for the UI and primary Python for the back-end logic. This selection lets me construct knowledgeable interface in pure Python with out touching HTML or CSS. It’s nice for small apps, although it has its personal limits that we are going to focus on later.
A Fast tour of the App
Let’s begin with the touchdown web page. This web page permits the consumer to create an account and log into the app.
By the writer: View of the touchdown page
As soon as logged in, you arrive on the Technique Setup web page. Right here, you’ll be able to enter your objective with a reputation and class. I’ve created eight classes which you could change upon getting the code. For the remainder of this demo, I’ve saved solely a few of my non-confidential targets seen. The remaining are private and hidden with the purple shade.
By the writer: View of the setup page
Subsequent is the Execution web page, which I actually like. Right here you may have bins which you could test to trace your day by day, weekly, month-to-month, and yearly targets. You’ve got each a day by day view and a long-term view that permits you to validate your targets execution.
By the writer: View of the execution web page (The day by day setup)
By the writer: View of the execution web page (The long-term setup)
To complete, I’ve created a Studies web page. It supplies a snapshot of your objective execution. That is my favourite half as a result of it helps me see if I’ve reached my day by day, weekly, and long-term targets. If a objective is late, the system will clearly show it.

By the writer: View of the report web page
Let’s Soar Into the Code
Step 1: The Mission Organization
Knowledgeable app wants a clear construction so the “logic” is separated from the “visuals”. Create a folder named vision_2026 with this construction:
By the author
Step 2: The back-end (Neon & Database Setup)
Create a free account on Neon.tech. When you create a challenge, retrieve your Connection String and paste it into .streamlit/secrets and techniques.toml precisely like this:
DATABASE_URL = "your_connection_string_here"
By the writer: The right way to create a challenge on Neon
By the writer: The right way to retrieve your connection string
Step 3: Constructing Your Tables on Neon
Within the Neon SQL Editor, execute this script to determine the 5 elementary tables:
- long_term_tracking: Retains Month-to-month, Quarterly, and Yearly information of strategic progress.
- customers: Retains safe account data.
- goals_catalog: This “Architect” desk outlines objective titles, classifications, and prevalence frequencies.
- daily_tracking: Retains knowledge on all high-frequency day by day check-ins
- weekly_tracking: Logs completion of weekly milestones by ISO weeks.
By the writer: The right way to create your tables on the database
Step 4: Environment Set Up
conda create -n vision_app python=3.9
conda activate vision_app
pip set up -r necessities.txt
The Connection Script (db_utils.py):
This script permits Python to speak to Neon utilizing a RealDictCursor, making knowledge very straightforward to deal with.
The “Mind” (core_logic.py)
That is an important a part of the logic. Normal calendars are messy, so we use the “Thursday Rule” to remain mathematically correct in metrics computation for our day by day and weekly targets.
Designing Visuals with AI (ui_pages.py)
As soon as your database and logic are prepared, don’t wrestle with UI syntax. To be sincere, I didn’t code all of the UI myself. I used a immediate to generate the primary mannequin, then adjusted it to my wants.
The Orchestrator (app.py)
This essential file manages the touchdown web page and navigation. Streamlit has its personal session state to handle logins, which may be very useful for a private use app or an MVP. With out mastering complicated authentication ideas, you’ll be able to create a touchdown web page the place customers can create an account and log in. Simply bear in mind this method has its personal safety limitations for bigger scales.
Step 5: The Deployment
Guarantee all of your information are dedicated and pushed to a GitHub repository.
Connect with Streamlit Cloud:
- Check in to
share.streamlit.ioutilizing your GitHub account. - Click on “New app.”
- Choose your repository, the department, and the primary file (
app.py).
The “Secrets and techniques” Configuration: That is essentially the most essential step. Since it’s best to by no means add your secrets and techniques.toml file to GitHub, you will need to present these secrets and techniques on to the Streamlit platform:
- Within the deployment settings, go to the “Secrets and techniques“ part.
- Paste your
DATABASE_URLprecisely because it seems in your native secrets and techniques file.
By the writer: The right way to copy your secret variable within the streamlit cloud
To run accurately on a distant server, guarantee packages.txt (for Postgres connections on Linux) and necessities.txt are within the github repository.
And that’s it! If you wish to create your personal visible board, you’ll be able to comply with these steps. All of the code is obtainable right here: https://github.com/sbendimerad/VisionBoard2026
For those who don’t need to deploy your personal, be happy to make use of my reside model right here: Vision Board 2026
For the app to run accurately on a distant server, you might want to guarantee two particular information are excellent:
packages.txt: That is important for Postgres connections. Streamlit Cloud runs on Linux, and it wants a system-level driver to speak to your database.
necessities.txt: This tells the cloud which Python libraries to put in.
And that’s it 🙂 If you wish to create your personal visible board, you’ll be able to comply with these steps, all of the code is right here: https://github.com/sbendimerad/VisionBoard2026
In case you don’t need to deploy yours, you’ll be able to completely use the url I’ve deployed totally free simply right here: Visionboard2026
I hope this app helps you set and monitor your 2026 targets! If you wish to add any new options, don’t hesitate to fork the challenge.
Please needless to say whereas Streamlit and Python are excellent for creating a fast, useful app, this isn’t essentially a long-term resolution for a full-scale enterprise software. For knowledgeable, high-traffic product, you’ll in the end want a devoted front-end and back-end structure.
🤝 Keep Linked
For those who loved this text, be happy to comply with me on LinkedIn for extra sincere insights about AI, Information Science, and careers.
👉 LinkedIn: Sabrine Bendimerad
👉 Medium: https://medium.com/@sabrine.bendimerad1
👉 Instagram: https://tinyurl.com/datailearn

