= Rhizi =
A collaborative editor for organizing, communicating, and analyzing data in graph form.
= Requirements =
* Neo4J DB server
* Python 2.7
* Flask
* Apache Ant
= Use =
== requirements ==
Install [neo4j](http://neo4j.com/download/)
Install [gevent-socketio](https://pypi.python.org/pypi/gevent-socketio/) Or Run pip install gevent-socketio
== Running Rhizi Locally ==
To run Rhizi locally:
For testing locally run neo4j locally on the default 7474 port and then launch run-local.sh:
./run-local.sh
Or perform the following tasks by hand:
# Invoke the local deployment Ant target:
$ cd ./rhizi && ant -f build.ant deploy-local
# Assert Neo4J is running and listening on it's default port
# Run rhizi-server.py:
$ cd deploy-local && python bin/rz_server.py --config-dir=etc
Command line use documentation can be view with:
:$ python rz_server.py -h
= Development =
To update the css files you need [sass](http://sass-lang.com/)
The build tool is [make](https://www.gnu.org/software/make/)
To rebuild the css files issue make from the top level directory:
$ make
For dev mode(debbuging, manual file load) use `?debug=1` at end of URL: e.g. `file://rhizifolder/html.index?debug=1`
== Neo4J DB management ==
* Use $ neo4j-shell -file reset-db__single_link.cypher to bring the DB to an empty state, excluding two nodes and a single link.
== Running server tests ==
Test code makes use of Python's unittest - run by invoking them with python,
or by creating a launch configuration in your IDE of choice.
Note: server test-cases do not yet support pre-run DB state validation and are
likely to leave DB side-effects.