Whoo doggie, I fell deep into the Reticulum/NomadNet rabbit hole this past weekend and set up a node on Jellyfin5, which is not allowed a tunnel through the firewall, and so technically does not serve anything to the wider Internet, including the Jellyfin service – that’s just local to the household LAN. It was really easy, at least in Linux and necessitated a Python install, which is a language I’m not familiar with, but wasn’t hard to pick up the basics of in a few days. Enough to create a fallback version of the Typewriter Database on the Nomad Network.
What’s the Nomad Network? Well, the slogan is “Unstoppable Networks For The People”, which describes the spirit of the thing, but on a basic level, it’s a Network Stack that can act as a Transport Layer to announce itself and serve pages on practically anything that can tranceive a carrier wave – from the internet itself to LoRa or Packet Radio or just a plain serial connection. It is from the core designed for encryption, portability and privacy. Your node is not identified by a domain name or an IP address – instead it generates a cryptographic hash unique to the node when the node is created, and that is used to find and identify the node on the peer-to-peer Reticulum mesh network. Therefore, you don’t need to open any ports on your firewall to serve NomadNet pages. You don’t even need the internet, but Reticulum will happily use it as a transport layer if it exists, because yaknow, it’s fast and connected to lots of other nodes. (:
So yeah, a new frontier is out there. A new place to publish information available to the wider world. Fresh, virgin territory lubed up to be plowed by those with TRUE GRIT! Designed to be free of corporate control, kinda like BBS’s and the Early Internet, it feels like. Haven’t been up for air to touch grass in like 4 days. It’s got me thinking of the amusing incongruity of building the Typewriter Database on a mesh network currently mainly populated by hackerspaces, cyber-libertarianism, more “this is a test page” results than you can shake a stick at, and quite a lot of Russian nodes that I would suspect are people managing to get around the internet crackdown happening there now.
So yeah, it’s not exactly got the styling chops of Web 3.0, or for that matter, Web 1.0 – The white terminal text on black background aesthetic is king, and ya can’t display images on a page or have any real table structure (which the TWDB is pretty much all about, with its image galleries and age tables) or even have different fonts unless you can construct them from the standard ASCII characterset in whatever MONOSPACED font the user has their browser set to use. You get text, and that’s it other than a simple markup language called Micron which allows just some very simple styling of text – like bold, italic, underline, foreground and background colors, left, right, center aligned – not much more than that. You have basically the same design constraints as a 1990s BBS SysOp did. Pretty much the immediate descendant of art drawn on a typewriter. :D
Here’s some quick examples from nodes I’ve been to recently:
And now the Typewriter Database is there as well… Kinda. Because of the whole “no images or tables” thing, I can’t really serve *those* specific pages from my node, but with a little Python wrangling, I *could* build a sort of link farm that pulls data feeds from TWDB on the web, builds pages of links to those pages on the main TWDB website, and thus generates some several hundreds, if not a thousand or so pages in the matter of the past few days – making it one of, if not *the* largest site on the Nomad Net that I’ve seen so far.
And of course, I had to set up a data feed from TWDB to generate a Micron-formatted “My Collection” feed for our node pages! :D
So the next step is to figure out how a reticulum node’s ability to “fingerprint” its identity to another node’s page can be leveraged to securely link a TWDB user account to that node identity so TWDB users can positively secure their account to a reticulum identity on NomadNet of the TWDB site there. Building user authentication is always the primary task and it should be designed to allow your TWDB “Hunter” account to seamlessly integrate with your Reticulum node identity. I have an architecture roughed out, so I’ll be back to hitting the Python tutorials to get *that* nailed down before tackling the… other things.
munk.org and TWDB on NomadNet: node hash 52ff111b4501e29d592b9601808a1866 or just search for “munk.org” in the node browser. If I’m up, enjoy, if not – I’m prolly tinkering with the thing or blew it all up. (:
Addendum: Here’s my sketch of the authentication process I’m working on. You see – way back when I first built TWDB’s user authentication system, I added a field to the database where a random cryptographic key is generated and stored anytime you log in or out of the TWDB. It was never used for anything, but was sort of a “well, might as well make a secret key that only exists while a user is properly logged into the site – just in case I later want to build a lock on a remote site which that key could be used on to prove that the user on that other site was an authenticated TWDB user that was currently logged in.” – you know, the sort of thing a neurodivergent programmer builds into his projects but rarely ever gets around to using. Turns out, I just had a decade’s worth of foresight, and now I have the perfect application for that feature.

You are my spooky open network bandana-masked Harry Tuttle/Blank Reg/Morpheus cyberpunk antihero!
Death to TCP/IP! Long live the new mesh! :D