Recs.
Updated
A non-linear personal notebook used as a single HTML file in the browser or as a powerful Node.js application.
SpecsUpdate
Pros
Pro Self-hosted and indefinitely accessible
All content is stored within the same html file as the interface.
Pro Easily programmable
It is relatively easy to program TiddlyWiki to do what you want. From writing simple macros to display text in a certain way, all the way to writing plugins to render and process entirely new kinds of content. So if you can code in Javascript, you are not bound by the usual limitations note-taking apps force on you.
Pro Built in cloud saving for when one does connect to the internet
User can work offline as much as they want and once connected to the internet can then upload these changes with the built in cloud storage function called TiddlySpot. Tiddlyhost is the secure, modern, reliable successor to Tiddlyspot, and its code is open source. Other (non-built-in) solutions for cloud storage involve Google Drive, Dropbox, Github etc.
Pro Progressive user level, from ease of use to programming your own plugins
Basic users can start with simple note-taking, progressively discover predefined features and existing plugins, then start using more fancy features (like filters, widgets, macros), in order to adapt their wiki to their needs.
Pro Supports importing from other tools
Supports importing from tools such as Notion, Evernote, OneNote, Apple Notes, Bear, Zkn3, Obsidian, and Roam Research. Because TiddlyWiki supports marldown, and can transform markdown to wikitext. Because other tool learn [[ ]] syntax from wikitext, so most feature can retain.
Cons
Con Steep learning curve
Not for the uninitiated, you need to learn Wiki markup, learn TiddlyWiki itself, and learn the lingo of those active on its Google+ Forum, the primary place from where support can be obtained.
The people are a friendly lot though, most willing to help, but like many other of the technologically inclined assuming too easily that you understand most of their language whilst it actually seems to be riddled with mysterious jargon and abbreviations such as CSS, Config etc.
Initially this may give the impression that TiddlyWiki is not at all intended for general use but mainly for usage by people such as the developers of TiddlyWiki themselves (that would be a mistake, especially since with the advent of TiddlyWiki 5 and its further development great progress has been made to make TiddlyWiki very much more user friendly. This is a great application, well worth that learning curve, and offering much more functions than note taking alone.)