Obsidian · · 5 min read

I Used Claude to Build a Beautiful Journaling Dashboard in Obsidian

I Used Claude to Build a Beautiful Journaling Dashboard in Obsidian

I’ve been journaling in Obsidian ever since I first started using the app over 5 years ago. The Daily Notes make it perfect for this, though I’ve crafted my own workflows using a method called Daily Questions that measure my intentions rather than the outcomes.

I explain the whole process ​here​, but the short version is this:

But in the last two weeks, I rebuilt this whole workflow from scratch using Daily Note properties instead.

In this newsletter, I’m going to show you how I made the switch.

But first we need to talk about why.

The Future is Properties

The biggest thing to happen to Obsidian last year was the release of the Bases core plugin. This added the ability to view, filter, and edit data from properties attached to your Obsidian notes.

While Properties had been around for a while, the release of Bases made it clear just how important these were going to be in Obsidian going forward.

The minute that I started playing with Bases, I knew the writing was on the wall: my tag-based journaling workflow was going to need to be replaced.

I’ve been dragging my feet with moving everything to Properties, but got inspired a couple of weeks ago when someone in The Library mentioned a pretty cool plugin called ​Life Tracker​ that allowed you to create a dashboard in Bases to visualize your property metadata.

At first glance, I thought I had struck gold. I was able to create a pretty impressive looking dashboard inside of a Bases view that showed me historical data on all my journaling prompts in a cool-looking line graph, and could even select from a few different colors to make it a little more visually appealing:

The Life Tracker version of this dashboard

Pretty quickly though, I started to hit the glass ceiling with this approach. As I started looking for ways to customize these graphs, I recalled Tim Miller writing about ​visualizing data using DataviewJS​. Unfortunately, I know nothing about writing DataviewJS and quickly got lost in the code explanations.

But then I had a crazy idea: could I get Claude to help me write the code to visualize the data the way I wanted?

Short answer: Very much yes.

Building My New Daily Questions Dashboard

The graphs I built this way were pretty straightforward: they have a solid line that shows my Daily Questions scores for the specific properties the scores are assigned to. There’s a little bit of flex (or tension) in the line graph, and the dotted line represents the average score for the time period shown on the graph.

This is already way better than my old Tracker-based dashboard, but then I was also able to add a button to each code block in Canvas that allows me to select different time periods to display:

You can change the number of entries displayed using a drop-down menu.

So now I no longer have to update the date values in the Tracker code, and I can just select the time period I want from a drop-down menu. All the data instantly gets updated, and the averages on the bottom are calculated just from the visualized data that’s being shown in the graph.

I’m actually working on a video that walks through all the code, but ​here it is​ if you want to download it yourself. Just know it’s still a little bit of a work in progress.

Then I had another crazy idea: could I combine these all into one graph and toggle the individual properties on or off?

Again, yes.

So I have another combined code block which shows each property as a different color and the averages below the graph for each score being shown:

You can toggle individual properties on or off with checkboxes.

You can toggle the checkboxes at the top to choose which lines show up on the graph, and again, there’s a button to display different time periods here.

And all of these graphs render incredibly fast (much faster than my old Tracker graphs did).

I’m still tweaking this one to get it just right, but once I do, all of this will be added to the next version of ​LifeHQ​ 😉

Setting Up the Note Properties

Again, note properties are the key to making this all work. Each graph up above is simply showing the numerical values associated with a particular property over time.

Here’s what it looks like at the top of a Daily Note:

The properties fields added to my Daily Note Template file.

In order to update these, I also had to modify my Daily Questions Shortcut I walk through ​here​. The basic concept is the same:

The difference is that it’s no longer a text block that gets inserted at a placeholder. For this, I had to first create a dictionary file in the Shortcut with the key value pairs I wanted to set, then set the properties for the current Daily note according to that dictionary:

My updated Daily Questions Shortcut

This part is a little bit technical, and I’m actually working on a video for this. But the short version here is that this Set Properties action adds my responses to the properties in the current Daily Note in a way that the workflow at the end of the day is exactly the same.

(If you want to play with the Shortcut, ​here's the link​.)

The Bottom Line: Claude is great at writing DataviewJS code.

I kinda can’t believe what I was able to accomplish here. This is the ideal version of my Daily Questions Dashboard, and has given me fresh inspiration for additional dashboards as well (I’m currently working on an updated habit tracking dashboard).

I’m still a little bit nervous about sharing code I didn’t write myself, but I’ve learned quite a bit from the process as Claude does a great job of commenting in the code and explaining the changes it makes with each revision.

I’ll be sharing this in the Practical PKM live cohort kicking off TODAY in The Library first, then I’ll share it publicly once I know it’s 100% bulletproof. But the cool part about this is that you can make it your own simply by changing the property you want to track in the code. A simple find and replace and you can customize these graphs to work with whatever properties you want to track instead.

Click Here to Download the Practical PKM Starter Vault

Click Here to Download the Practical PKM Starter Vault

The Practical PKM Starter Vault includes a collection of my very best tips for using Obsidian, reference files to help you remember key concepts and commands, and 15 of my personal template files to make creating new notes effortless and error-free.

Read next