CouchApp: Standalone CouchDB Application Development Made Simple
CouchApp is designed to structure standalone CouchDB application development for maximum application portability.
Also, be sure to checkout our Erlang-based sibling, erica.
Deploy your apps to the client
CouchDB's replication means that programs running locally can still be social. Applications control replication data-flows, so publishing messages and subscribing to other people is easy. Your users will see the benefits of the web without the hassle of requiring always-on connectivity.
Couchapp requires Python 2.5x or greater. Couchapp is most easily installed using the latest versions of the standard python packaging tools, setuptools and pip. They may be installed like so:
$ curl -O https://bootstrap.pypa.io/get-pip.py $ sudo python get-pip.py
Installing couchapp is then simply a matter of:
$ pip install couchapp
On OSX 10.6/10.7 you may need to set ARCH_FLAGS:
$ env ARCHFLAGS="-arch i386 -arch x86_64" pip install couchapp
To install/upgrade a development version of couchapp:
$ pip install -e git+http://github.com/couchapp/couchapp.git#egg=Couchapp
Note: Some installations need to use sudo command before each command line.
Note: On debian system don't forget to install python-dev.
To install on Windows follow instructions here.
More installation options on the website.
Read the tutorial.
tests directory, copy
the settings, and then run the tests from the main
couchapp directory (as
the paths below are relative to that):
$ nosetests --tc-file=tests/config.ini
If you're wanting to generate code coverage reports (because you've got big plans to make our tests better!), you can do so with this command instead:
$ nosetests --with-coverage --cover-package=couchapp --cover-html --tc-file=tests/config.ini
Thanks for testing
Building the docs
We generate the document via
sphinx and serve it with github pages.
First, prepare our building env.
ghp-import (for importing html/css/js files to branch gh-pages).
cd docs/ pip install -r requirements.txt
To build it, just issue:
And sphinx will generate static html at docs/_build/html. We can browse the site from this dir already.
To copy the file from docs/_build/html/ and push to branch
gh-pages, just issue: