![Just a banner. Robots, ignore this (or are you too stupid to understand me? What? You're gonna start crying now? OK. You're intelligent). ](graphics/swizzler-banner.jpg )
### Goals
Provide a [twister ](twister.net.co ) web client that:
* is *[#NoJS](http://rys.io/en/123)<sup><del>TM</del></sup>* - currently, it has *no JS at all* , which is a trivial case ;),
but all pull-requests should *work when JS is disabled* . That's the only "rule".
* Is simple enough for people to fork and try other front-ends or features (I have a few in mind. I'm sure you have others).
In short: it's a "twister-client constructor kit". Even if what you do doesn't get merged upstream, who says we should all run the same client? Diversity is fun.
### Status
We're [this close ](http://s3.amazonaws.com/dk-production/images/36637/large/alexandersasc_3.jpg ) to the "read-only functionality milestone".
### Roadmap
* [db instead of cache ](https://github.com/swizzler/swizzler/wiki/from-cache-to-db )
* Add "write" functionality (post, follow, etc.). Implement all [or most of] the functionality of standrd/calm client.
* [Additional features ](https://github.com/swizzler/swizzler/wiki/Ideas-for-features )
* *Insert here stuff I've overlooked*
* Then we take Berlin
----------------
### Dependencies
* [CherryPy ](https://pypi.python.org/pypi/CherryPy/ )
* [Pystache ](https://pypi.python.org/pypi/pystache/ )
* [twitter-text-python ](https://pypi.python.org/pypi/twitter-text-python/ )
You also need tweaked versios
of [python-bitcoinrpc ](https://github.com/thedod/python-bitcoinrpc/tree/for-twister )
and [functioncache ](https://github.com/thedod/functioncache/tree/skip-cache )
but these are defined as git submodules, so `install.sh` takes care of them.
### To install
* Install dependencies mentioned above
* Run `./install.sh` to create `cherrypy.config` and `appdir.py`
* Edit `cherrypy.config` (at least edit the user`:`pwd`@` at `rpc_url` ,
but it's also recommended to uncomment and edit the `browser_user` and `browser_password`
lines to enable basic authentication *before* someone develops a swizzler-specific trojan ;) )
### To run
* `python swizzler.py`
* It should say `ENGINE Serving on 127.0.0.1:7919` (or whatever host and port you've defined at `cherrypy.conf` )
* Browse to that address