couchapp

The Latest

Apr 16, 2012
Dec 12, 2011 / 17 notes
Dec 12, 2011 / 7 notes
Dec 6, 2011 / 4 notes

wactbnotes

Today I searched an old post. I used the tumblr search without success …

So I’ve started a new blog with some couchdb, git, node.js stuff I wrote last months. This kind of posts I will dump there.

Leave a comment on

wactbnotes

or do it here. The blog is hosted on

http://www.iriscouch.com/

It’s a couchapp. Comments?

I relay hope Wittgenstein will approve.

Dec 5, 2011 / 4 notes
Dec 1, 2011 / 5 notes

couchapp git and yuidoc

Up to now the generation of documentation out of javaScript sources don’t seem to have a standard tool.

I’ve tried yuidoc and have to say that I’m not complete convinced. The pros and cons of yuidoc are a story for itself.

However I’ve worked out a (conceptual) way which combines my daily tools couchdb couchapp and git for having the latest documentation (generated by yuidoc) online and moreover offline.

Install yuidoc

There are official repos on opensuse.com providing the python stuff. With this the installation goes like described in the INSTALL file after extracting the zip:

 1. Check to see if setuptools is installed.
     Execute this command:
         which easy_install

     If it returns something, it's installed skip to step #3.


 2. Install Setup Tools:
     Extract the archive in ext and install the package
     sudo python setup.py install (no sudo needed for cygwin or windows)

     setuptools
         cd ext
         tar xfvz setuptools-0.6c9.tar.gz
         cd setuptools-0.6c9
         sudo python setup.py install

 3. Install the dependencies

     easy_install pygments
     easy_install Cheetah
     easy_install simplejson


 4. Make a copy of yuidoc/bin/example.sh and modify the paths to suit your
 needs.

If you speak a lang with strange letters (öäü) you should replace line 57 in yuidoc_highlight.py with:

out.writelines(highlighted.encode('utf-8'))

Config

The example.sh from point 4 is the script you have to modify and execute. This is nice, since you can simply use the script as post commit hook

cp  yuidoc/bin/example.sh  ~/..project../.git/post-commit

You can set some variables in that script e.g.:

version=`git log --pretty=format:"%ad-%an-%H" --date=short -n 1`

to display some version information on the page.

Use a couchapp!

I have to document a couchapp I wrote. Here, my first attempt was: make a folder below _attachments and let the html arise in there failed. Rewriting the

 yuidoc/template/main.tmpl

to adapt the server pathes is simply to much work. Therefore this idea:

  • Generate a couchapp project-doc and strip it down to the bones:

    /dir> ls project-doc/
         ./
         ../
         _attachments/
         .couchappignore
         couchapp.json
         .couchapprc*
         _id
    
  • set the variables in the shell/hook-script to

     parser_in="./_attachments/js-src-to-doc"
     parser_out=$doc_home/_attachments
     generator_out=$doc_home/_attachments
    

while

     doc_home=path/to/project-doc
  • couchapp push
  • visit http://localhost:5984/db_name/_design/project-doc/index.html

Also the deployment can be activated via the shell/hook-script. Add

cd path/to/project-doc && couchapp push

at the last line. If everything works fine you got a fresh source code documentation on every commit.

Nov 30, 2011 / 14 notes
Nov 25, 2011

couchdb couchapp + opensuse12.1

for the couch itself I used this repo

  zypper ar http://download.opensuse.org\
     /repositories/server:/database/openSUSE_12.1\
     /server:database.repo

for erlang that

    zypper ar http://download.opensuse.org/\
       repositories/devel:/languages:/erlang/openSUSE_12.1/\
        devel:languages:erlang.repo

The couchapp installation works as told in the README on a fresh installed opensuse 12.1:

 Couchapp requires Python 2.5x or sup. To install couchapp using
  easy_install you must make sure you have a recent version of distribute
  installed::

$ curl -O http://python-distribute.org/distribute_setup.py
$ sudo python distribute_setup.py
$ easy_install pip

  To install or upgrade to the latest released version of couchapp::

$ pip install couchapp

4 minutes, That’s all, That’s it!

THX 4 all the work 2 the relaxers, couchappers and repomen

Nov 15, 2011 / 7 notes
Nov 8, 2011 / 3 notes
Nov 2, 2011 / 11 notes
Nov 1, 2011 / 12 notes
Oct 14, 2011 / 27 notes
Sep 14, 2011 / 2 notes
Sep 13, 2011 / 5 notes