Multi User Alternative to TiddlyWiki

@cornernote and others,

Revisiting this thread about multi-user options, I remember being intrigued by this post (months ago) about cornernote, which gots lots of :heart: reactions…

But I would love for someone to offer guidance or explanation for a novice user-on-the-ground. I have no idea what a “docker image” is, or what “reverse proxy” means. Could you (or someone who’s in the know) explain what this solution enables that was not possible before?

I (and perhaps others) would need to understand your “cornernote” project in layperson’s terms in order to decide whether to attempt to climb the learning-mountain that would be required to deploy it – or to consider paying a server-oriented guru who knows their stuff to coach me through it.

Many thanks in advance!

This does remain the biggest unsolved challenge for TiddlyWiki, especially now that so many people are giddy with the simultaneous collaboration experience of google docs, etc. Word processors are rarely the best tool for the job, but that real-time interaction is pretty impressive.

I’ve daydreamed on occasion about something like TiddlyWiki built on CRDTs. Using that sort of underlying tech plus the ethos of Local-first software: You own your data, in spite of the cloud would allow for both the local first aspect (which I’ve always loved about TiddlyWiki) with the ability to scale up to collaboration.

1 Like

Grateful for the question and replies !

hard to keep up here on Talk

Two thoughts:

#1: Plone === it’s what happened to Zope

I was heavily using Zope c.1999-2000
One aspect really liked was that one could architect a symmetry where everyuser was both client & server
But also share webhosting got a central project.
So yeah we’re in another century
But what goes around comes around…
Sometimes !

#2: EAF = Emacs Application Framework

Okay so just shoot me
But but there be gold in them thar hills…
And TW needs friendly cities to camp nearby or setup shop
Where communities of skill and passion will grok it and help

///
some links
October Plone Conference

go pitch TW5 there
Ask for help
Find partners
Get a grant from EU for DevOps

Collab CMS meets spa notebookville

1 Like

I think @papiche 's Astroport could play a role here, especially if it could use the manyver.se framework that could bring node.js as basis for tiddlydesktop ro all devices.

1 Like

Thanks !
Don’t know it
Will investigate…

update:: ooh this looks really great
Making :coffee: :croissant:

I read this thread when it came out, but I don’t have the time now to try to figure out what was on display here. But as a programmer, I can answer these two specific questions.

Docker Image

Not terribly long ago, when you needed to run a system on a server, there was a great deal of setup to do. Perhaps you needed a specific programming language not included with the operating system. Perhaps you needed an older version of a database tool. Perhaps you wanted to run a web server, or an email server. Perhaps you had all this plus dozens more tools you needed to configure. Setting up a new server might take days, even weeks.

Containers came along to automate all that. A container combines all these things: languages, databases, tools, servers, etc., into a single unit that can be deployed all at once, along with your application’s code.

Docker is simply the best-known of these container technologies. A Docker image contains all the common core things that you might need, needing only your own code to run. What might have taken a few days to cobble together, is right there at your fingertips.

Reverse proxy

A proxy server is a machine on a local network that can forward non-local requests out to the wider internet. An organization might use one to log requests, to block access to forbidden locations, and for many other purposes.

A reverse proxy server does the converse job. It takes a request from the internet, validates it, transforms it, and passes it on to a server that knows how to handle the request.

If my organization handles a request to http://tiddly.example.com/req/123, it could be fed first to a reverse proxy, which says, “Oh, you want tiddly? I have six servers set up to handle tiddly, and it looks like #4 is ready. But first, let me see if I have req/123 in my cache. Well, sadly, that existing cache entry is expired, so let’s call #4, get the response, stuff it back in the cache for next time, tack on some security information, and compress the response. There, now it’s ready, and I’m passing it back to you.”

In short a (forward) proxy server spreads requests from a private network to the public internet; a reverse proxy server spreads requests from the public internet to nodes of a private network.


I hope these are relatively clear, and I’m not still too far buried in programmer-speak. Feel free to ask for clarifications.

And again, I don’t think this really gets at the heart of the question, but perhaps it helps a little.

6 Likes

Thanks, Scott! Now I’m no longer clueless about those two concepts!

I admit, though, I still don’t really understand whether this docker image puts a robust multi-user wiki on the feasibility-horizon for someone like me – someone with mediated access to institutional servers, but without the skills or permissions to troubleshoot.

Yeah, I’m afraid I don’t know that. When I have some time, I would like to investigate a number of such tools, because. as you know, I hope one day to take advantage of them. But “when I have some time” does not look to be soon.

It’s been a while since I’ve talked about it (many years), but I think this could work:

                              E2EE P2P Collaborative Tiddlywiki

                  User 1                                            User 2

 TW5-Bob <--> CRDT file synchronizer <--> ratox <--> ratox <--> CRDT file synchronizer <--> TW5-Bob
                                               ↖   ↗
                                                 ⤫
                                               ↙   ↘
 TW5-Bob <--> CRDT file synchronizer <--> ratox <--> ratox <--> CRDT file synchronizer <--> TW5-Bob

                  User 3                                            User 4

Tuntox and Toxic (which has conferences/groupchats) could work. Radicle may be worth considering as well. Computationally, Tox is quite performant, and its DHT is reasonably well-designed and long-standing (and can be routed over Tor). The networking side is taken care of (you don’t have to run your own server, set up port forwarding, rent and set up a VPS, etc.), and all you need is a key to join. Unfortunately, I don’t know the missing CRDT piece to the puzzle (just found this: GNU ELPA - crdt).

2 Likes