File: README.rst

package info (click to toggle)
couchapp 1.0.2+dfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 1,268 kB
  • sloc: python: 4,448; makefile: 179
file content (151 lines) | stat: -rw-r--r-- 4,172 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
CouchApp: Standalone CouchDB Application Development Made Simple
================================================================
.. image:: https://img.shields.io/travis/couchapp/couchapp/master.png?style=flat-square
   :target: https://travis-ci.org/couchapp/couchapp

.. image:: https://img.shields.io/coveralls/couchapp/couchapp/master.png?style=flat-square
   :target: https://coveralls.io/r/couchapp/couchapp

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

CouchApp is a set of scripts and a `jQuery <http://jquery.com>`_ plugin
designed  to bring clarity and order to the freedom of
`CouchDB <http://couchdb.apache.org>`_'s document-based approach.

Also, be sure to checkout our Erlang-based sibling,
`erica <https://github.com/benoitc/erica>`_.

.. contents::


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. 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
<https://couchapp.readthedocs.org/en/latest/couchapp/install.html#installing-on-windows>`_.

More installation options on the `website
<https://couchapp.readthedocs.org/en/latest/couchapp/install.html>`_.

Getting started
---------------

Read the `tutorial <https://couchapp.readthedocs.org/en/latest/couchapp/gettingstarted.html>`_.

Documentation
-------------

It's available at https://couchapp.readthedocs.org/en/latest

Testing
-------

We use `nose <http://nose.readthedocs.org/>`_. and
`nose-testconfig <https://pypi.python.org/pypi/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
---------------

* `List of CouchApps <https://couchapp.readthedocs.org/en/latest/user/list-of-couchapps.html>`_