Personal Notebook - Redux
Posted by fedops in InfoManagement
TiddlyWiki
In Keeping a Personal Notebook I described my use of TiddlyWiki for collecting information in a semi-organized way.
It's quite good at most things; however, the one thing I feel it's lacking in is hierarchical organization. I get that using tags is a reasonable way to navigate unstructured information. However, I really like tree structures for sorting information based on their default location, and using tags for things that belong in more than place in the tree. Maybe I'm weird. There is a tree extension for TiddlyWiki but I never quite got it work.
The other thing I like to be able to do is use common CLI commands like grep
to sift through information without having to click around in GUIs. While that's
technically possible in the Wiki, the fact all its contents are in one big HTML
file is less than convenient.
Joplin
I recently happened upon an alternative application called Joplin that is available in three versions: an Electron desktop app, a mobile version for Android and iOS, and even a CLI version.
Best of Both Worlds
While it uses an SQLite database as its backend, there is also a very convenient (and fully automatic) synchronization function that exports the entire database contents as well as embedded resources such as images and PDFs into individual files.
The included Meta information such as creation time and parent node in the tree
allows easy onward use of the data should a change of application become
necessary. And, in a pinch, grep
ing the information is possible even over an
SSH session should the need arise.
Markdown Throughout
Both the internal as well as the synchronized data uses Markdown syntax, which is easy to use and very light weight, and again doesn't get in the way of grep & friends.
Order!
The other "killer feature" (for me) is the easy reordering and nesting of notebooks inside notebooks via drag-and-drop. This leads to nicely structured trees, while still maintaining full-text and tag-based search capabilities.
Desktop Joplin is available as an AppImage, self-contained application, which easily integrates into common desktop environments. The CLI version must be installed using the Node.js Package Manager (npm) -- information on how to do that is available at the Github page.
So far I haven't completely made up my mind on which way I will go, but Joplin looks like a strong contender.