Skip to content

A TiddlyWiki Based Journal

Introduction

As a big fan of TiddyWiki, I'm always looking for new ways to leverage its capabilities to improve my information management efforts. I've long used a TiddlyWiki as a daily log for work, but I wanted to try something a little different for tracking personal hobby activities as well as tasks around the house. The journal feature built into TiddlyWiki seemed a good fit for this, but I wanted to find a better way to organize my entries, and improve the ability to subsequently retrieve information from the wiki at a later date.

Overview of Structure

The first thing to note is that I use the journal creation command as it is, and have the "Create a new journal tiddler" button enabled to appear at the top of the toolbar by selecting the "new tiddler" check box in the "Tools" tab.

The tiddler name format that I've selected for the journal tiddlers is "YYYYMMDD_(topic)". For the most part, the "topic" will be the same as the tag applied to the tiddler, but the topic name doesn't have to track the tags.

Next, all of the pages in the list that appear under the "Radar231 Journal" tab are all dynamic content index pages. This means that as new journal tiddlers are added, these index pages will be automatically updated.

The index pages contain links to the applicable (based on the filtering selection) individual journal tiddler pages. They also contain the text of each individual journal tiddler page, through a process call "Transclusion" (see applicable link).

Control Panel Settings

Most of the TiddlyWiki settings (themes, colours, fonts, etc) can be set as desired. The following settings differ from default and are needed for this journaling set up.

Info / Basics

  • set "Title of new journal tiddlers" to "YYYY0MM0DD_"

Settings

  • set "Default Sidebar Tab" to "Radar231 Journal"

Root Tiddler Configuration

"Radar231 Journal" Tiddler

Create a new tiddler named "Radar231 Journal". This tiddler will be the tab in the side bar that will anchor the list of all of our dynamic index pages.

Configure this tiddler as follows;

  • add a tag named "$:/tags/SideBar"
  • add the following new fields (name, value)
    • "caption", "Radar231 Journal"
    • "list-before", "$:/core/ui/SideBar/Open"
  • add the following text to the tiddler body;
<div class="tc-table-of-contents">
<<toc-selective-expandable "Radar231 Journal" "sort[ind]">>
</div>

Tag Index Tiddler Configuration

"Journal Indexes" Root Tiddler

This is the root page of a list of tag filtered index pages. This just provides an anchor point in the list for the individual journal index tiddlers.

This tiddler is configured as follows;

  • add a tag named "Radar231 Journal"
  • add the following text to the tiddler body;
<div class="tc-table-of-contents">
<<toc-selective-expandable "Journal Indexes" "sort[ind]">>
</div>

Individual "Journal Index" Tag Tiddlers

Under the "Journal Indexes" page are a number of individual index tiddlers, each one associated with a single metadata tag value. As new journal tiddlers are created, add the applicable tags to the journal tiddler, and that tiddler will then automatically be added to the appropriate index tiddler(s).

These tiddlers are configured as follows;

  • add a tag named "Journal Indexes"
  • add the following text to the tiddler body, setting the tag as appropriate (leave the "Journal" tag as is);
---

<$list filter="[tag[Journal]tag[Woodworking]!sort[title]]">
<br/>
<h2><$link><$transclude field="title" mode="block"/></$link></h2>
<$transclude field="text" mode="block"/>
<br/>
<hr/>
</$list>

Date-Based Index Tiddler Configuration

Next are a number of hierarchically organized date-based pages, drilling down to an index page for each month.

"Journals" Root Tiddler

This is the root page for the date-based index pages. Under this page are a page for each year.

This tiddler is configured as follows;

  • add a tag named "Radar231 Journals"
  • add the following text to the tiddler body;
<div class="tc-table-of-contents">
<<toc-selective-expandable "Journals" "sort[ind]">>
</div>

"Journals - (YYYY)" Tiddler

Next is another root page, this time for the monthly index pages in a particular year.

This tiddler is configured as follows;

  • add a tag named "Journals"
  • add the following text to the tiddler body;
<div class="tc-table-of-contents">
<<toc-selective-expandable "Journals - 2021" "sort[ind]">>
</div>`

"Journals - (YYYYMM)" Tiddlers

Finally, next comes the monthly index tiddler. There will be, of course, one of these index tiddler pages for each month of the year.

This tiddler is configured as follows;

  • add a tag named "Journals - YYYY"
  • add the following text to the tiddler body;
---

<$list filter="[prefix[202010]!tag[Exercise]!sort[title]]">
<br/>
<h2><$link><$transclude field="title" mode="block"/></$link></h2>
<$transclude field="text" mode="block"/>
<br/>
<hr/>
</$list>

Day to Day Usage

Entering new journal entries into this system is quite easy. Click on the "Create a new journal tiddler" button in the top toolbar. This will open a new tiddler with the title of "YYYYMMDD_", and a single tag named "Journal" already applied. Add an applicable suffix to the title. Usually this will be the same as the default tag that will be added (ie, _RV). Next, add an applicable tag(s) to the tiddler, based on what the entry is related to.

Finally, enter the desired text in the body of the tiddler, in as great, or little detail as desired.

Once the tiddler is saved it will show up in the applicable dynamic index pages, both date based as well as tag based.


Created: 2021-08-25 22:14
Last update: 2021-09-04 16:22