N.B.: This has been superseded by the devstore.


StorageInterface intended to ease client-side plugin development

Setup Instructions


N.B.:
There is a script which automates the process described below.
It is called with an argument specifying the directory in which the new instance should be created (e.g. ./devinstance.sh /tmp/TiddlyWeb creates /tmp/TiddlyWeb/dev).

$ cd ~/tiddlyweb/

$ wget http://svn.tiddlywiki.org/Trunk/contributors/FND/TiddlyWeb/plugins/devtext.py

$ cat > tiddlywebconfig.py
config = {
    "server_store": ["devtext", { "store_root": "store" }]
}
<CTRL+D>

$ twanager instance dev
$ cd dev/

$ mv ../devtext.py ./
$ mv ../tiddlywebconfig.py ./

N.B.: Ideally, tiddlywebconfig.py should be merged with the existing configuration file.
$ twanager bag plugins
<CTRL+D>

$ cat > store/plugins/helloworld.js
alert("Hello world!");
<CTRL+D>

$ twanager bag content
<CTRL+D>

$ twanager tiddler lipsum content
modifier: test user
tags: test tmp

lorem ipsum dolor sit amet
<CTRL+D>

$ twanager recipe test
desc:
policy: { "read": [], "create": [], "manage": [], "write": [], "owner": null, "delete": [] }

/bags/system/tiddlers
/bags/plugins/tiddlers
/bags/content/tiddlers
<CTRL+D>

$ twanager server

N.B.: Instead of creating dedicated files within the respective bags, symlinks could be used to make a TiddlyWeb instance use existing directories (e.g. from a local Subversion checkout) as bags.