Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    couchpublic

    couch -- Stupid simple Couch wrapper based on Request.

    Install

      npm install couch
    

    Or from source:

      git clone git://github.com/mikeal/couch.git 
      cd couch
      npm link
    

    Usage

    var couch = require('couch')
      , c = couch('http://me.iriscouch.com/db')
      ;
     
    c.post({'msg':'new document'}, function (e, info) {
      if (e) throw e
      c.post({'msg':'new document', _id:info.id, _rev:info.rev}, function (e, info) {
        if (e) throw e
        c.get(info.id, function (e, doc) {
          if (e) throw e
          console.log(doc) // {'msg':'new document', _id:<id>, _rev:<rev>} 
        })
      })
    })

    Couch

    • new Couch(options) - return value from require('couch')(url)
    • Couch.get(id, cb) - get a document of the specified id
    • Couch.post(doc, cb) - write a document. MUST have _id and _rev if already exists
    • Couch.update(id, mutate, cb) - updated an existing document atomically (regardless of revision)
    c.update('myid', function (doc) {doc.status = 'complete'}, function (e, info) {
     if (e) throw e
     console.log(info) // {seq:<seq>, id:<id>, rev:<rev>}  
    }) 

    Views

    • Couch.all(opts, cb) - Hits the /db/_all_docs API which accepts similar arguments and has a simpilar return value to views but is an index of all documents in CouchDB.
    c.all({keys:['onlykey1', 'onlykey2']}, function (e, results) {
      if (e) throw e
      console.log(results.rows) // [{id:onlykey1, rev:<rev>}, {id:onlykey2, rev:<rev>}] 
    })
    • Couch.design(name).view(name).query(opts)
    c.design('app').view('byProperty').query({key:'type', include_docs:true}, function (e, results) {
      console.log(results.rows)
    })

    Keywords

    none

    install

    npm i couch

    Downloadslast 7 days

    15

    version

    0.8.0

    license

    Apache-2.0

    repository

    github.com

    last publish

    collaborators

    • avatar
    • avatar