[TW5] MultiUser plugin now serves multiple wikis.

309 views
Skip to first unread message

Jed Carty

unread,
Dec 23, 2017, 12:06:58 PM12/23/17
to TiddlyWiki
In celebration of having some time off I have add a bunch more with my multiuser plugin.

Now it can (new stuff):

* be configured from within the wiki (most command line arguments are done from within the wiki)
* server multiple wikis
* you can reset or shutdown the wiki server from within the wiki
* run shell scripts from within the wiki

and (things is could do before and still does)

* watch for changes on the file system and reflect any changes to the file system in any connected the browsers (almost) immediately
* allow multiple people (or one person in multiple computers/browsers) to edit the same wiki at the same time.

The plugin is here if you want to use it.


This could be split into a few separate plugins but since they are closely related I have been using it as a single plugin. The problem is that then to use the multi-user part you would have to have all the plugins installed.

Stobot

unread,
Dec 25, 2017, 11:31:58 AM12/25/17
to TiddlyWiki
I'm very excited to try this, but am unfortunately lost on trying to get this up and running. I'm a windows using amateur (no git / web / server experience) trying to follow along... I was able to follow the standard TW Node JS instructions and get something open, but now trying to apply this plugin, I'm struggling.

I *believe* these are the first steps of the instructions, but they don't seem to work in either the node.js window or the node.js command window:

git clone --depth=1 https://github.com/Jermolene/TiddlyWiki5.git
git clone --depth=1 https://github.com/OokTech/TW5-MultiUser.git TiddlyWiki5/plugins/OokTech/TW5-MultiUser
cp -r TiddlyWiki5/plugins/OokTech/TW5-MultiUser/MultiUserWiki TiddlyWiki5/editions/

Am I missing a step somewhere? Maybe I should be moving files around instead of using these commands?

Any "dummies" help you can give would be greatly appreciated!

Jed Carty

unread,
Dec 25, 2017, 1:00:38 PM12/25/17
to TiddlyWiki
Is git not included on windows by default? That may be why.

I can write instructions for doing it without git, you can just download the zip file and unzip it instead of using git. That may be a better solution for people who don't use git anyway.

I will write up some instructions for that now.

And I may be able to package it into a normal plugin. I haven't tried that yet.

Mat

unread,
Dec 25, 2017, 4:54:01 PM12/25/17
to TiddlyWiki
Jed, interesting stuff as always - even if I have not tried it since I'm a single file kinda guy.

Curious; if someone offered a server, would an instance of this creation of yours then allow a collective effort for e.g a plugin repo? Are admin rights controllable? What limitations would you say your solution has for this type of use?

<:-)

Jed Carty

unread,
Dec 26, 2017, 5:26:24 AM12/26/17
to TiddlyWiki
Mat,

It has the potential for that but it isn't there yet. Like with twederation the potential is there but adoption seems to be the problem judging by the response I have seen.

Since I haven't really gotten much feedback on this I have just been making what I want smashed into one big plugin. So I have a setup where on the local network the wikis are accessible to people I know who can edit them without restriction. The framework for a per-user list of uneditable tiddlers is in place, and for a list of tiddlers that are only given to specific people. I haven't had a use for those yet and I haven't really had feedback aside from people who seem to be using it like I do so I haven't bothered with it. It is certainly not secure in the way it should be if it were used on the open internet.

I think that I am going to make this into the multiuser edition and split it into the 5 or 6 separate plugins because it is a lot of different pieces.

If we added the browser part of the websockets, which is actually quite small, to twederation it wouldn't change anything about how single file wikis interact but the wikis could then connect to a node server using websockets and it could mediate updates and make the whole system much more scalable. Instead of sending the initial hello world message to a google server it could be to one of these servers. But that would only use a small part of the multiuser setup so I should probably split this into different plugins first.

Ste Wilson

unread,
Dec 26, 2017, 8:45:15 AM12/26/17
to TiddlyWiki
I want to try it out.. I really do! Just need a nodejs server solution... :(

Jed Carty

unread,
Dec 26, 2017, 8:47:41 AM12/26/17
to TiddlyWiki
This isn't something that you should be running online right now. I just run it on my desktop for the local network. I also have a mobile server that I carry around but convincing people that is useful isn't something I feel like doing.

HansWobbe

unread,
Dec 26, 2017, 6:29:32 PM12/26/17
to TiddlyWiki
Jed:

As a bit of a show of support for some of your thoughts and directions thoughts, I mention that I am slowly building up a local home network that includes RaspberryPi(s) running NodeJs, as well as the usual mix of Windows, iOS and Android devices.  It's main purpose is to test the various tools I need for work and to evaluate how they interact. 

It appears that your emerging environment should let me streamline the interactions, so I am interested in learning more about what you are doing and how I might be able to make use of it.

Cheers,
Hans

@TiddlyTweeter

unread,
Dec 27, 2017, 12:26:48 PM12/27/17
to TiddlyWiki
Ciao Jed

... adoption seems to be the problem judging by the response I have seen.

I just wanted to comment from my point of view on this.

I'd very much like, eventually, to be able to host a publicly accessible TW on the net that allows authorised used to both edit and author posts. I have one very large on-going project that I currently run via email that is way too cumbersome.

That said, I'm not a pioneer and testing stuff like this sounds complex and I'd probably be more of a pain than a help at this stage.

Truth is numbers are low here. I doubt its lack of interest per se. More like limited hours to explore more, especially when its a novel developing approach. That said, overall I think multi-user access is important. I did try NoteSelf as a way to get further into it but didn't find it robust enough for simultaneous users, though otherwise good.

By the way I have learned masses from your innovations and am very grateful you exist.

Best wishes
Josiah

Ste Wilson

unread,
Dec 29, 2017, 7:08:41 AM12/29/17
to TiddlyWiki
I tried it!!!
set it up running from termux on android.
successfully served to another device (iPhone).
when Iphone tried to create a new tiddler the red screen of embarresement appears.
a tiddler created on the android did not appear on the iPhone despite a refresh or two.

Ste

Ste Wilson

unread,
Dec 29, 2017, 7:39:31 AM12/29/17
to TiddlyWiki
It does work serveing from fire fox to chrome on my android.
Reply all
Reply to author
Forward
0 new messages