TiddlyWiki | Personal, non-linear, Note Taking Application on Linux

There are many note taking applications available out there that each target a different Method used to keep track of information. Unless you are one of those blessed few with a photographic memory with endless roles of film, you may have to write some things down. Although there are a few different applications I use to record information, I consider one to be my perpetual system of record, TiddlyWiki. I have been using it for about 10 years now, the same file has grown with me over the years. I have used TiddlyWiki to keep my projects organized for work and personal projects.

Bottom Line Up Front: If you want to keep your data locally, have notes that you can use whether or not you have access to the internet, easily replicated and will not ever be left with a system that loses support and a loss of your notes. This just may be the application for you. It is simple enough to get started with it but extensible enough that you may never out grow it.

Neat features

It is incredibly easy to get going at the very basic level and I truly have not exploited its full potential at all as I use this just to keep my head straight on projects and ideas, things I have started to research and so forth. I enjoy that the markdown editor is accessible and has buttons to make it easier to add the readability enhancements necessary to make reviewing notes better.

There are plenty of built-in, easy to access features in TiddlyWiki but with a little time and understanding it will grow with you and can become as functional as you need it to be. What is key, here is the low barrier of entry. When you first start TiddlyWiki, the GettingStarted tiddler helps you set it up with your own personalized title and description. To create new notes, or called in this application, “Tiddlers”, select the “+” on the right-hand pane and begin typing away.

The preview pane is nice to have so you can make sure that the result of what you are imputing is going to be readable later. This can be a bit slow on some older, lower powered machines but it is nothing serious. If you do choose to use TiddlyWiki, I recommend you just play with it and see how it works. You can even try it here but remember, it isn’t being saved unless you choose to save it locally.

The standout feature of TiddlyWiki is all the power and capability it has is all available locally. There is no need for signing up to any service or setting up a complicated server system to get started with it. It should be noted that you can do these things with TiddlyWiki, but it is not a requirement.

Set Up

Two options the easy one that will work but lacks one major feature which is TiddlyDesktop, the second uses Firefox (or Chrome but that is not my browser of choice). Up until I started writing this, I was using TiddlyDesktop and I was mostly content, but having the ability to use it fully in the browser, Firefox, has made my life so much better.

TiddlyDesktop

TiddlyDesktop works quite nicely but lacks a search / find on page feature like you have available in the browser. Outside of that, it is a no-fuss method of taking notes on the Desktop. The key feature I like about this is the ability to have multiple TiddlyWiki files linked, making it very convenient to operate out of multiple notebooks.

TiddlyDesktop Main

With this window open, it only takes a click of the “Open” button on the wiki file and you are presented with your TiddlyWiki notebook.

I created an “openSUSE Breeze Dark” theme for this to match my desktop but more on that later. The interface is great and basically everything I want in a Desktop note taking application except that the scroll bars are not the right color and I can not do the ctrl+F to find a specific location for a word when within a specific tiddler. This, however, works smashingly well and I find it very functional.

Firefox

When I first started using TiddlyWiki, this was my preferred method and frankly, the only method available. When permission systems changed in both Chrome and Firefox, I was no longer able to save my tiddlers until recently when an IRL friend, whom I will call “Paul” for the purpose of this article told me what I had to do.

Here is where you can go to see all your installation options: https://ibnishak.github.io/Timimi/

For this to work properly, there are two steps you have to do to make it work in Firefox. The first is to install the Timimi extension. I assume this will work just as well in Chromium / Chrome if that suits you better but for my purposes, I use Firefox.

Next, you will have to run this little application in the terminal from this Github repository:

https://github.com/ibnishak/Timimi/releases

Download the version of timimi for Linux or if you are installing this on another operating system, it should work the same but I have not tested that.

The Linux download is a 5 MB large shell script that when executed will ask you some what browser you are using, select the browser using the cursor keys and press enter.

After you select the browser of choice, it will do the rest and tell you to have a great day.

Now you can easily save edits you make to your TiddlyWiki while using the browser.

Firefox one step further

This is optional, and perhaps an added step for a minimal amount of convenience, but I wanted to be able to open up my TiddlyWiki notebook as a kind of stand alone application in Firefox, something like a “WebApp” but I didn’t want to jump through any excessive numbers of hoops to make it work.

The first step is to create a specific Firefox Profile for TiddlyWiki. I wasn’t sure how to do this within Firefox itself, so I did it the easy method, using the terminal!

firefox -p

This will open up a dialog to make the next steps much easier

Select “Create Profile…”

Select Next once you have read through and understand what it is you are doing. In this case, we are creating a profile, specifically for the TiddlyWiki. This is not strictly necessary but since I wanted to customize how TiddlyWiki started, in a profile with only the Timimi extension and the Dark Scrollbar extension. You can call the profile whatever you want but I like to be a bit more verbose in the things I do.

I also selected a specific location to keep the settings and preferences for this “user”. I have an Applications folder in my home directory for self contained applications, like AppImages or things like TiddlyDesktop here.

Now that the profile is set select the “Use the selected profile without asking at startup” so that when you activate that profile, it doesn’t prompt you to select the desired profile, unless you see fit otherwise.

To open that profile, using the terminal or krunner run this:

firefox --no-remote -P TiddlyWiki-Firefox

Note: The option --no-remote prevents links you open from other applications from launching in this profile.

This will present to you a fresh, clean, ready to be configured profile, custom for your TiddlyWiki notebook usage.

Assuming you have already run the timimi shell script earlier in this blathering. All you will have to do is install the timimi extension in this Firefox profile.

https://addons.mozilla.org/en-US/firefox/addon/timimi/

Open up the Firefox preferences by either selecting in the menu > Preferences or type this in the address bar and selecting “Home” from the left side menu. Alternatively, you can type this in the address bar.

about:preferences#home

Here, set the home URL to Custom and put in the path to the TiddlyWiki file you want to open up automatically. Now, anytime you run this profile, this will automatically start with your TiddlyWiki as your home page.

Creating a Desktop / Menu shortcut

This is another optional step to make using TiddlyWiki a better “integrated” experience by creating a desktop icon that allows you to quickly open up your TiddlyWiki notebook. I am using the Plasma Desktop Environment so if you are using something else, adjust accordingly.

After you open the Menu Editor, select “New Item…” from the top row of icons and enter the name of the item.

Optionally, you can add a description but the Command: section is necessary. For my setup, I entered the command to open firefox with the TiddlyWiki profile and filed it under the “Office” submenu.

I went one step further and set it as a favorite in my menu because I use it that often.

Now, using this Firefox profile, I am almost completely content with my non-linear notebook utilization in my daily life.

Features I use most

Just taking raw notes, copying links, adding notes to links. I find it more productive than using bookmarks in the browser. Very often, I find that bookmarks don’t do a good job of answering why I bookmarked it. I also can’t search my bookmarks quite so easily or add additional notes to them, at least, not quite as free forming.

The journal function is fantastic. One click and a tiddler pops open a new tiddler, titles it with today’s date (customizable), adds the tag “journal” and you are ready to start entering your collected thoughts on the days events.

Everything else I do is a variation on this. I quite literally dump just about everything in TiddlyWiki. It is the place that I start collecting ideas and research for what will end up on CubicleNate.com. With everything being tagged and linked together, I can easily slalom my way to something useful.

Why I use it

This is a consolidated location for all my notes that will never become unavailable to me. I can be as verbose as I want, with links, embed images and videos in the Tiddlers. With the ability to reuse blocks, tagging and linking Tiddlers, I am able to get to the information I want with ease.

The built in search function in incredibly fast. I can search term or word in the side and it will filter out the tiddlers that have that word, prioritizing any tiddlers that have the word in the title to the top of the list. I find this search function to be absolutely fantastic.

It’s just so simple, convenient and has 100% uptime, that is, as long as my computer is up and is synchronizing to the other computers I want, I have access in perpetuity. I am in situations, rather frequently, where I do not have reliable internet access which makes using some services not possible or exceedingly difficult.

Since TiddlyWiki is not much more than an html file at the most basic level, slightly more advanced would be the html and some images in a folder and if you have gotten a bit excessive, html, and your home directory worth of information woven into it, you can still very easily synchronize this around in any method of your choosing. I use Syncthing to keep this synchronized between my various systems quite happily. I have also used Nextcloud, Insync and Dropox. There really is no difference from my perspective.

Customization

I’m not sure why it took me so long to personalize my TiddlyWiki appearance but I was able to do so recently. Maybe I drew inspiration through creating an openSUSE Breeze Dark Plasma Style and Color Scheme and this spilled over. Whatever the reason, you can download the theme here.

I realize Linux users are a small, percentage of computer users, an even smaller sliver of that are openSUSE users, a smaller yet slice are Plasma users on openSUSE, of which, only a few hundred have installed this particular varient of Breeze Dark theme and my guess is, the number of those that use TiddlyWiki is so small and perhaps I am the only one. Regardless, I will still share it with the even fewer individuals that may end up reading this. I hope you enjoy!

What I Like

Most of all, I enjoy how sustainable TiddlyWiki is to use. You can open it up to view and edit it on any major browser without any troubles. Saving, however, does require some massaging to work properly, thanks to the increase in security constraints required on browsers. The TiddlyDesktop application is a fine quick wedge to be able to utilize all the functions of the TiddlyWiki with spell check.

The ease of hopping into this tool and just using it is without any sort of difficulty and the hand-holding for understanding how to use the markdown makes it super easy to get along with it in very short order. This is simple enough to easily use but the depth of features and extensibility can have you making all sorts of interesting tools within it.

Most importantly, I won’t lose my data if a service goes offline. This is an open source project that, at its basic level, sits within an HTML file. You can do to this whatever you can dream up in HTML. That means, even without a webserver, just a browser, this is accessible and functional. Your data is easy to transport and synchronize between machines which means endless flexibility along with accessibility.

What I Don’t Like

There isn’t a good mobile client I have yet found that I can seamlessly utilize the TiddlyWiki html files. I can very easily view it in a web browser but inputting information is a challenge.

The TiddlyDesktop application doesn’t have a “find” function so when using it, I am forced to read / scan through my notes and I find that to be lacking in efficiency. I would actually prefer a quality desktop client to my fiddling with Firefox but when it is set up it works. It likely just doesn’t make for a good experience for the broader users out there.

The documentation to exploit the full potential of TiddlyWiki is written to a higher level than what I think it should be. It could use some improvements in explaining what the scripts do and how to use them better. I have to ask for help from time to time to make my user experience better.

Final Thoughts

What would make TiddlyWiki truly great is if I was able to integrate its functionality into Kontact, the KDE Persinal Information Manager. Just thinking about this, if I was able to integrate tasks for my calendar with TiddlyWiki in such a way that I could use either as an interface would make my world much better organized. I’m sure it could be possible but I am just not sure how that would be accomplished.

Even if TiddlyWiki is never integrated into Kontact, this will continue to be my “system of record” for all my notes. I know that I won’t lose access to it nor will software advance so much that it will cause my TiddlyWiki to stop functioning and I lose my collection of information. I appreciate how flexible and incredibly useful this system is and how I can change it and improve things as the need arises.

I want to stress that I am only using one of the many methods of implementation. I use the most simplest method but if you do indeed want to implement this as a web service, that is possible. This is an incredibly flexible system whose function can easily be expanded. This is one of those applications that is easy enough to hop into and use but complex enough that doesn’t hinder you with unnecessary limitations.

References

https://tiddlywiki.com
https://ibnishak.github.io/Timimi/
https://addons.mozilla.org/en-US/firefox/addon/timimi/
openSUSE Breeze Dark Plasma Style
openSUSE Breeze Dark Plasma Color Scheme Published
openSUSE Breeze Dark TiddlyWiki palette

2 thoughts on “TiddlyWiki | Personal, non-linear, Note Taking Application on Linux

  1. The thing I like most about TW is that I can use it for whatever I want. I used it for college, Army, and my current job as a kind of flashcard/refresher tool. Also right alongside the project development and tracking that I spit out reports directly from. And use it for journaling for previous issues I’ve had when integrating an obscure module that I only get every couple of years. I can also export tiddlers to my colleagues for the same reason; or even split the TW using tags and just posted the whole thing for new engineers. It’s just so darn flexible!

Leave a Reply