Skip to content
Utilities to make standalone CouchDB application development simple
Branch: master
Clone or download
Pull request Compare This branch is 363 commits ahead of benoitc:master.
iblis17 Update watchdog version (#250)
* Update watchdog version

close #249

* Update appveyor.yml
Latest commit 21f2cda Aug 16, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
couchapp
docs
resources [setup.py] Update copyright, and remove unused script. Jan 13, 2016
tests [localdoc] test cases for dir_to_fields Apr 16, 2017
.gitignore [#181] Apply `setup.py nosetests` to travis ci Sep 24, 2015
.travis.yml
LICENSE update to restkit 1.2 and add -b option from @drsm79 (thanks!) . Mar 7, 2010
MANIFEST.in fix windows version. add packages to py2exe Nov 8, 2011
NOTICE version is 0.8. May 6, 2011
README.rst [doc] remove instruction for OSX 10.6/10.7 Nov 29, 2016
THANKS multiplatform autopush command (works on windows, bsd, linux & mac). May 6, 2011
appveyor.yml Update watchdog version (#250) Aug 16, 2018
python-couchapp.spec Add spec file for RPM-based distributions Oct 17, 2011
setup.cfg [ci] enable nose doctest plugin Jan 31, 2017
setup.py Update watchdog version (#250) Aug 16, 2018

README.rst

CouchApp: Standalone CouchDB Application Development Made Simple

https://img.shields.io/travis/couchapp/couchapp/master.png?style=flat-square https://img.shields.io/coveralls/couchapp/couchapp/master.png?style=flat-square https://readthedocs.org/projects/couchapp/badge/?version=latest&style=flat-square

CouchApp is designed to structure standalone CouchDB application development for maximum application portability.

CouchApp is a set of scripts and a jQuery plugin designed to bring clarity and order to the freedom of CouchDB's document-based approach.

Also, be sure to checkout our Erlang-based sibling, erica.

Write apps using just JavaScript and HTML

Render HTML documents using JavaScript templates run by CouchDB. You'll get parallelism and cacheability, using only HTML and JS. Building standalone CouchDB applications according to correct principles affords you options not found on other platforms.

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.

Installation

Couchapp requires Python 2.6 or greater but not in Python3. 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

or this way if you cannot access the root (or due to SIP on macOS), then find the executable at ~/.local/bin. For more info about --user, please checkout pip help install:

$ pip install --user 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.

Getting started

Read the tutorial.

Documentation

The document of master branch is available at https://couchapp.readthedocs.io/en/latest.

Branch stable-1.0 is here: http://couchapp.readthedocs.io/en/stable-1.0/

Testing

We use nose. and nose-testconfig. for setting up and running tests.

$ python setup.py nosetests

Config

Our nosetests will run with options listed in setup.cfg.

In the tests directory, copy config.sample.ini to config.ini, tweak the settings, and then modify your setup.cfg:

[nosetests]
...
tc-file=tests/config.ini

Coverage

If you're wanting to examine code coverage reports (because you've got big plans to make our tests better!), you can browse around the cover dir

$ cd cover
$ python2 -m SimpleHTTPServer

or (if you prefer python3):

$ python3 -m http.server

Debug

If you want to debug the failed run with pdb, add the following option to setup.cfg:

[nosetests]
...
pdb=1

Thanks for testing couchapp!

Building the docs

We generate the document via sphinx.

First, prepare our building env. We need sphinx:

$ cd docs/
$ pip install sphinx

To build it, just issue:

$ make html

And sphinx will generate static html at docs/_build/html. We can browse the site from this dir already.

Other resources

You can’t perform that action at this time.