Sunday, 4 January 2026

How I Built a 10-Year Life Analytics Platform in 5 Days (with Antigravity)

Subtitle: From 87,000 rows of raw spreadsheet data to a React/ML dashboard, powered by Antigravity and Gemini. Personametry.com


The Data Hoarder’s Dilemma

For the last 10 years, I’ve been obsessed with tracking my time. Every hour of work, every night of sleep, every family interaction—logged diligently in Harvest. By 2026, I had amassed 35,442 unique time entries covering 87,100 hours of my life.

I had the data. But I didn't have the truth.

Spreadsheets were too slow. Standard dashboards were too generic. I needed a custom "Life Operating System" that understood my specific contexts—Personas, "Deep Work" streaks, and Sleep hygiene.

In the past, building this would have been a 3-month side project to an outsourced developer since I've stopped coding back in 2010! This time, I decided to do it differently. I paired up with Antigravity (powered by Gemini/Opus and separately using Codex 5.2 to validate) to see if we could build it in a week.

Here is the story of Personametry. The worklog journal separately shared here.


The Co-Pilot Experience: "Senior Engineer" on Demand

Working with Antigravity wasn't like using a glorified autocomplete. It feels like pairing with a Senior Principal Engineer, Business Analyst, Data Engineer, UX Designer & Systems Engineer - all in-one-person who never sleeps.

We established a Coding Contract early on: "No stubbing. Plan first. Self-validate." This set the tone. The AI didn't just throw code at me; it wrote Implementation Plans, created "Artifacts" to visual progress, I explicitly instructed it to maintain its own worklog.md.

Day 1: The Foundation (Dec 31)

We first reviewed options for a suitable tech stack geared towards Business Intelligence Dashboards. The choices were: 1) Google's Material UI, 2) AWS Cloudscape and 3) Ali Baba's Ant Pro suite. I chose Ant Pro because I wanted to learn something new and also it apparently enjoys the highest stars on GitHub compare to the others. We defined a clean architecture. Instead of hacking together a script, we set up a scalable ETL pipeline in Python. The AI understood the concept of "Personas" immediately— and used by Quicksight transformation code to map out my Harvest tags into clean P1 (Muslim), P3 (Professional), and P0 (Sleep) buckets.

Day 2: Visualization & The "Wheel of Life"

We moved to the frontend (React 19 + Ant Design Pro). The goal: A "Wheel of Life" radar chart.

  • Challenge: Visualizing 10 years of balance without clutter.
  • Solution: The AI implemented interactive year-switching and diverging bar charts to show year-over-year trends.

Day 3: The "Data Nerds" Playground

I wanted to slice the data myself. We built a SQL-like Query Builder UI.

  • Me: "I want to filter by 'Deep Work' and see the trend."
  • AI: "Here’s a dynamic QueryFilter component backed by an in-memory aggregation engine."

Day 4: Machine Learning & "The Optimiser"

This was the turning point. I asked it to research best practice ML techniques for leveraging my dataset and build a forecasting and optimization engine. I didn't settle for its original design. I fed its design into Gemini Pro, deep research, and fed that into the AI for review. It then settled on a revised design plan ml-recommendation-design.md. The AI didn't just give me averages. It built an Optimization Service using Goal Programming. It took my "hard constraints" (work contracts) and "soft goals" (increase family time by 10%) and solved for the perfect daily schedule.

It also added Anomaly Detection (STL Decomposition) to scientifically prove when I was burning out.

Day 5: Sleep & V1.0.0 (Jan 4)

Final polish. We added Sleep Health Heatmaps (Red/Amber/Green based on hours) and analyzed my circadian rhythm to find my average bedtime (10:17 PM).

By 2:00 PM, we tagged Version 1.0.0.


The Result: Personametry V1

In 5 days, we built what would have taken me months alone:

  • Tech Stack: React 19, TypeScript, Python, Ant Design Charts.
  • Features: ETL Pipeline, ML Anomaly Detection, Goal Optimization, Interactive Dashboards.
  • LOC: Thousands of lines of clean, strictly typed, documented code.

The biggest lesson? The future of coding isn't about writing syntax. It's about orchestrating logic. With the right AI partner, the barrier between "Idea" and "Shipped Product" has never been thinner.

Links:

By 2:00 PM, we tagged Version 1.0.0.


NotebookLM - Slides



NotebookLM - Audio Overview



NotebookLM - Video Overview



Personametry V1.0 Worklog with Antigravity

Personametry Development Journey

Personametry - a decade's journey of time tracking now enhanced with AI

A summary of 2025 performance and intro to personametry.com

It is the time when I share my Performance metrics for the previous year, this card pretty much sums it up, logging 8700 hours, with 3006 time entries, tracking close to 24 hours per day:

Background

For the last ten years I've been running an experiment in logging my time spent activities like: Work, Family, Me Time, Sleep, Spirituality, etc. In 2015 I developed a model for personal development, called RAGE (Reality, Aspiration, Goals, Expectations). In 2016, I got more serious by inspecting my time across all areas of my life against my RAGE model, which triggered deeper reflection on my aspirations versus reality. For the first three years, I maintained a rhythm of personal monthly performance reviews (PMPRs) and then transitioned to quarterly, mid-year and final year reviews. At the start of each new year, I would dive deep into the previous year's data - build analytics and dashboards, which I shared on this blog.

Context about my workflow - the early days

In the early days, my process for insights was quite manual. Logging my time was easy, using Harvest App, which I'd been introduced to by a good friend, Farid - around the time I switched to professional consulting, servicing some contracts with Crossbolt that expected Harvest timesheets for billing. Incidentally, Farid was the source of inspiration for me to critically think about Reality V Aspirations that led to me creating my RAGE model. 

Generating reports initially started with exporting from Harvest, and importing to Excel and running pivot tables and charts, using content for my blog posts. I needed a way to transform the Harvest data to higher level constructs - so I transitioned to Amazon Quicksight (now Quick Suite), using an AWS Free Tier account. Quicksight was useful in acting as a yearly dataset, creating analysis that I would have done in Excel (so replaced excel) and created the dashboards, which I'd then copy and share in this blog. A downside of Quicksight is it's a closed system, had no way of publishing dashboards for public sites (like Google docs embedded pages mechanism). The free tier also prevented me from using its built-in insights features, and more recently Quicksight's AI analysis. I added Google slides to my workflow, sharing my deep dives as in this post. As AI tooling emerged, I transitioned to AI analysis as described here.

Introducing my latest workflow - finally, the Personametry Dashboard is born - ZERO Workflows

I spent just under 5 days building my Personametry app with Google's Antigravity as my coding partner. What a journey (look out for a future post). Since November 2025, I've been learning how to build apps with Antigravity, at first building my SMT app, then building tools for work - and I had enough insights to get Personametry app built.  What's my new workflow then? Everything is now automated, apart from my manual time logging. I've built a dashboard that syncs daily with Harvest data, through an automated GitHub actions workflow that pulls time entries via the Harvest API. Harvest is so cool that they allow even free users full access to their APIs. An automated data transformation job runs that cleans up the data and transforms it just the way I used to do the meta level transforms using Quicksight. So no more Quicksight. All the dashboards refresh automatically. I no longer need to create Google slides anymore. At the start of each year, I'd usually spend about a week's time analysing, reflecting and creating dashboards. Now my analysis can be anytime, with zero manual work. Giving a week's time back! Yes, anyone has access to my data and dashboard, I don't mind sharing because I believe other folks could benefit from my experiment, decide to start their own tracking journey or build an app for themselves. The codebase is on GitHub.


Personametry.com is more than just a dashboard - introducing Machine Learning

With my rich dataset, there's opportunities for applying machine learning forecasting techniques and instrumenting goals. Check out the Machine Learning page. I can now tune my personas and in real time see the effects, example: If I reduce my sleep hours, where would the gains go? If I reduce my work hours, subject to constraints, what can I do? If I invest in health and fitness, what's the impact on Family time, etc. For me, this is a game changer. The app will evolve and learn as the dataset is updated, without having to change code or do manual imports! I might have to tweak the code just a little to cater for special years like sabbatical breaks though.

What's next - where am I going with this?

Version 1.0.0 is now live! Depending on how much time I have in 2026, I will look at embedded AI data driven analysis into Personametry.com, leverage conversational analysis. Ultimately I'm still striving to build the perfect personal assistant that just "knows" me. I will look at bringing in additional data sources like Strava, Netflix, Youtube, even integrating Islamic and Gregorian calendars. And finally I'll hook in a RAGE scorecard to match my time against the RAGE model! I could also turn this into a paid platform service, creating a platform for anyone to sign up and build their own RAGE model personas and track with Personametry.com!