Kind of. ... TiddlyWeb is a reference implementation for a tiddler based data store, where every resource is uniquely reachable with an URI.
It was used as the basis for tiddlyspace, which sadly was closed down early last year.
Recipes and bags are basically a "concept" to manage multiple tiddler stores ... aka bags
If a recipe contains several bags, the contained tiddlers are "stacked".
The further down in the list, the higher the priority.
So the last bag will overwrite tiddlers from bags above it.
This concept is very powerful.
Eg: Having a bag, that contains your standard plugins, which is included into all of your recipes.
So changing this bag will update all your recipes ....
As
you can see, a recipe is a list of bags with filters. At
tank.peermore.com you can get a list of all public recipes like this:
https://tank.peermore.com/recipes.txtor
https://tank.peermore.com/recipes.jsonThere is a test-tw5 recipe,
https://tank.peermore.com/recipes/test-tw5.txt that contains
desc: test tiddlywiki 5
policy: {"read": [], "create": [], "manage": ["pmario"], "accept": [], "write": [], "owner": "pmario", "delete": []}
and 2 bags.
/bags/tw5/tiddlers
/bags/test-tw5/tiddlers
--------------
The bag: test-tw5 can be seen with:
https://tank.peermore.com/bags/test-tw5/tiddlers.txtSo it lists my public tiddlers.
A bag has a policy too, which can only be seen as json like this:
https://tank.peermore.com/bags/test-tw5.jsonIf you use
https://tank.peermore.com/bags/test-tw5 ... you'll get an html representation of a bag, with limited interaction. Just check it out.
===================
The sad thing is:
the nodejs server doesn't know anything about this mechanisms, except "default" recipe and "default" bag, to be able to re-use an existing tiddlyWeb adapter.
It only implements the most basic interaction between TW and a rudimentary file based datastore.
It was designed to be a test-server only, and nobody should have used it for production.
have fun!
mario