Working on projects is fun. Documenting them is often not so much. However, if you want anyone to duplicate your work — or even just want to remember what you were doing a few years ago when something needs upgrading or repairing.
There’s a ton of ways to keep track of the details of your projects. We love seeing how things come together and of course we’re happy to suggest documenting on Hackaday.io. But sometimes, you just want to keep your own notes to yourself. There’s always a notebook, of course, but that seems kind of old fashioned. A lot of projects are on Wikis but you hate to stand up a web server and a Wiki instance just to keep notes. But what if you could have a local Wiki with minimal setup?
I recently came across TiddlyWiki and decided to take it for a spin. Join me after to break to see what it’s all about.
With TiddlyWiki You can actually store a pretty nice Wiki in a single file. If you don’t like to depend on an internet connection, you can store it on your own computer or a flash drive. But you can also arrange to host it on the cloud if you like. You could even save it to Hackaday.io, although you’d have to zip it as the platform doesn’t accept straight HTML files.
How much power can you get in a single file? Actually, quite a lot. The infrastructure is one single HTML file, so maybe you can’t host Wikipedia with it. But you can modify that HTML file and, in fact, there are lots of plugins and other things that you can add even if your HTML skills aren’t up to doing it yourself. But more on that later.
It is dead easy to get started, tust download an empty TiddlyWiki template. You can name it anything you like and when you open it with a web browser, you’ll see it gives you a form to set things up. That form is actually written in the Wiki, so that should give you some idea of how powerful this is.
The file will contain one or more topics, called tiddlers. These can be visible or hidden and there are many ways to find, open, and close them. Each tiddler can have tags and hyperlinks. You might build a sidebar that lists all the tiddlers marked with a menu tag, for example. Or you might want to tag all your RISC-V tiddlers with that tag so you can find them easily. You can also search or dynamically include one tiddler inside another.
Every time you open a tiddler, it adds to your view. You can close any that you don’t want. You can also minimize them or you can minimize or close all other tiddlers if you want to focus on your work.
Saving and Other Features
The only small problem is how do you save your changes? In the default online Wiki, there is a topic called “GettingStarted” that actually shows you all the choices you have broken down by platform and web browser. There are connectors for storing your files locally or on a variety of cloud services including GitHub. There are also browser extensions available to make it easier to work with TiddlyWiki. There isn’t just one way, and everyone’s situation will be different. Worst case, you can elect to download the updated Wiki as you would any other file in your browser.
You can use a Tiddler to store bookmarks, organize tasks, keep inventories, organize images — you can even edit images. The nice thing is since it is all in one file, you can easily send it to someone and they can open it with just a web browser. You can, in fact, post it online and use it as a web site — something the tiddlywiki.com site does.
There are a wide variety of plugins you can install. For example, there is a syntax coloring plugin. Another one will embed Twitter data into the Wiki. In addition to the standard plugins, there are many user-contributed ones. For example, you can get tools to migrate from Evernote, generate QR codes, or work with Google Analytics.
Of particular interest is one plugin that provides the CodeMirror editor. It is made to edit code and you can install extra features for it such as syntax highlighting, brace completion, and keymappings.
In addition to plugins, you can download more themes and languages, too. Some of the themes are cosmetic, but some are practical. For example, you can install a theme that hides the ability to edit a tiddler. This would be useful if you were using it to deliver a web site. You can also require a password to save.
On Your Own
This isn’t meant to be a full TiddlyWiki tutorial — there are plenty of those online. If you prefer video, the series that appears below will get you started, too.
You can use TiddlyWiki for just about anything. We’ve even seen it used to build an adventure game. If you are using it now, or you plan to, drop a comment to tell us how. We’ve seen wikis used for a lot of neat documentation, including signal identification. Since the system is pretty extensible, we wonder if you could push a Jupyter notebook inside of it?