My little robot has gone off into the world by itself, so I have time to spend on tiddlywiki development again. Currently I have done nothing of value for TWederation in the past month. So that update is easy.
I am going to put this here so hopefully people will actually read it: This is beta software, if you try to use it without reading the small amount of documentation than it probably won't work. If you try to make something using it and don't look at and understand the code first it probably won't work. If you modify nothing and try to make it do something other than the simple things I mention than it probably won't work. This is the version where I removed almost all the sarcasm.
I split the basic mechanism I use for inter-wiki communication into its own plugin
here, if you want to use the mechanism that is what you need to look at and use.
There are two plugins there, Federation-core which is just the back-end part, if you put that in a wiki than other wikis can pull content from it. It doesn't have anything else.
Federation-tools are some very basic tools to make fetching content from another wiki that has the Federation-core plugin easier. There isn't really anything in the way of documentation so if you want to make something you will have to look at the code.
TWederation is built on top of what is in the Federation-core plugin, I am still working on refactoring everything in the twederation plugins to make future development easier. I hope to have the new versions up later today.
A very important note:
This is not the only way to make federated tiddlywikis! This is the way that I have worked out with a lot of help from other people (most notably Jeremy and Mat) that doesn't require anything other than a simple file server for the wikis on the network. I originally made this so that I could connect multiple wikis on my computer together and it expanded into something online. There are some important limits on what it can do and I don't think that this will ever be able to support large networks. If I manage to create a working community of 100 connected wikis I will be a bit surprised. Most of the problems when it comes to scale are due to performance issues. I think that for larger groups we can overcome some of these problems and retain a distributed structure by allowing multiple technologies. Once I have the basic TWederation system working well I am hoping to incorporate the work that Danielo has done with PouchDb (see
NoteSelf) to allow for larger distributed networks.