4 min read

I built a health dashboard using WHOOP & Notion

One of my most important goals is to improve my health, and what gets measured gets managed. So, over the last week, I built a Notion dashboard that displays my average sleep, Zone 2 cardio, and Zone 5 cardio as measured by my WHOOP fitness tracker. You can see it in real time here.

Screenshot from my Notion page. It updates daily and whenever new sleeps or workouts are recorded.

For a technical breakdown, check out the Github repo. There you’ll find the source code (well commented by yours truly) and instructions to replicate this project.

Building in public means sharing my wins and losses, and this project was a mixture of the two. While I accomplished my goals, I was left feeling unsatisfied, and this post is my exploration as to why.

At the start of the project, I had a few goals:

Bring my technical skills out of hibernation. I learned a lot while I was a PM, but fell behind technically. I’m happy to report I made a dent in that gap. I learned and implemented the OAuth2.0 handshake from scratch, deployed serverless code for the first time, and even discovered a simple solution to an undocumented Google Cloud limitation. O coding, how I missed you.

Practice following something through to the very end. I sometimes have trouble finishing what I start, and this showed up a few times during my time at Parallel Domain. That was unacceptable to me. In sports, I was taught to finish every sprint, every rep, every practice with everything I had, and knowledge work should be no different. Whatever project I choose, I want to see it through to the very end, so I’m happy to report that I did so for this project. Sending you this post was my final task.

To build confidence in myself. In this phase of my life, the confidence to try scary new things is my most valuable asset. But confidence doesn't come for free - it needs evidence. Completing this project was exactly what I needed.

Overall, this project took about 9 days, which is longer than I wanted. But I now have a working health dashboard inside my Notion workspace. I love that it updates throughout the day and gives me a heartbeat (zing!) on some health metrics. I'm no Bryan Johnson but my Notion home page is more valuable now.

When all was said and done, I was left with some important takeaways:

Know what I’m building. Initially, I had this vague idea of bar graphs and pie charts in Notion, and it took me a few days to realize the only stats I cared about are perfectly acceptable as numbers. This led to abandoning a completely unnecessary implementation path. I would have saved time by defining exactly what I wanted to build before I put down code.

When it comes to work, I’m the obsessive type. I often went to sleep and woke up with the project on my mind. I was thinking about it when hanging out with friends or out on a walk. I guess I really am the obsessive type. It’s a great strength to lean into moving forward, but I also wished I was more present with my people.

Talking about the project online opened the gates of serendipity. I posted a work-in-progress last week on Twitter, and a former classmate from junior high (currently an investor) reached out!

Nothing major came of it, but it increased my conviction that building in public opens exposes me to serendipity in major ways.

I’m more satisfied when my work benefits others. The point of this project wasn’t to build something useful. It was to build my momentum, refresh my technical skills, and practice seeing something through to its natural end. I did that, which is great, but I didn’t end up building something people want. There’s nothing wrong with hobby projects - this was fun! - but it was only for me, and that was a bit of a letdown. I want to build stuff other people also want, and it doesn't take much extra work to make sure of that.

To go fast, go alone. To go far, go with others. Building this solo allowed me to iterate very quickly and scope the project to my liking. But I’m limited in my time and my skills, I love working with others, and I have big dreams. Working with others would be so much more fun. (If you’re reading this and want to build something together, please reach out!)

Keeping a project log. I’m biased after the fact. Knowing how I felt day-to-day or why I chose specific technical decisions would have been a valuable for the retrospective.

I’m glad I saw the project through to the end - that was a big win for me. And I have some great lessons I'll be taking with me for the future.

What do you think of the project? Would you want this dashboard for your own health data? Let me know, and stay tuned for the next one.