
* TiddlyWeb Home Site: http://tiddlyweb.com/
* TiddlyWeb Git Repo: http://github.com/tiddlyweb/tiddlyweb

For additional installation instructions see
http://tiddlyweb.peermore.com/

If you develop with TiddlyWeb and are upgrading 1.0 to 1.2 there have
been changes you should make yourself aware of. Read `UPGRADE1.0to1.2
<http://github.com/tiddlyweb/tiddlyweb/raw/master/UPGRADE1.0to1.2>`_.

Introduction
------------

TiddlyWeb, aka mo'ass, is a RESTful data store which forms the core of a
reference implementation of server side implementation for TiddlyWiki.
It tries to provide a tested, documented, and clear implementation of
several facets that make up a good server-side:

* transparent system and code suitable for porting to other
  languages (where use specific optimizations will hopefully occur)
* an abstract model for authentication and authorization
* an implementation of authenticated recipes and bags allowing
  the conrolled access to dynamically created collections of tiddlers
* clean HTTP API based on REST principles
* test driven description and development

The system is designed so that parts that are not optimal for a
particular installation can be easily improved or swapped out via
plugins.

While TiddlyWeb was designed as a TiddlyWiki server-side it can also be
used as a generic data store that builds on concepts learned from
TiddlyWiki, primarily the concept of the tiddler: a small chunk of data
used to build up a greater whole.

TiddlyWeb includes a command line tool called twanager. Run twanager
without arguments for a list of available commands.

Installation
------------

The easiest way to install TiddlyWeb and all its dependencies is by
using `pip <http://pip.openplans.org/>`_ to install it from `PyPI
<http://pypi.python.org>`_:

   pip install -U tiddlyweb

If you wish to use TiddlyWeb as a server-side for TiddlyWiki to generate
a multi-user TiddlyWiki system, you will also need `tiddlywebwiki
<http://pypi.python.org/pypi/tiddlywebwiki>`_. This too can be installed
via pip. Installing tiddlywebwiki will install tiddlyweb for you:

   pip install -U tiddlywebwiki

Or you can install by hand, you will need the following requirements:

* Python 2.4, 2.5 or 2.6. (Python 3 has not yet been tested.)
* selector: http://lukearno.com/projects/selector/
* simplejson: http://undefined.org/python/#simplejson
* html5lib (for sanitizing input which may be rendered as HTML):
  http://code.google.com/p/html5lib/

Miscellaneous
-------------

See http://tiddlyweb.peermore.com/ for a TiddlyWiki generated by TiddlyWeb
and TiddlyWebWiki, a TiddlyWeb plugin that provides TidldyWiki server-side
functionality. That wiki contains the TiddlyWeb documentation. You can also
leave comments there to help improve the documentation.

See http://pypi.python.org/pypi?%3Aaction=search&term=tiddlywebplugins
for plugins that TiddlyWeb can use with itself.

See http://tiddlyspace.com/ for a shared hosting service built on
TiddlyWeb.

If you have questions or contributions on making this work
please post to the TiddlyWeb group at google groups:

  http://groups.google.com/group/tiddlyweb

or contact Chris Dent <cdent@peermore.com>.

TiddlyWeb is released under the BSD License and is copyright
2008, 2009, 2010 UnaMesa Association.
