PouchDB adapter for JugglingDB ODM

jugglingdb-pouchdb-adapter is an JugglingDB adapter to make usage of PouchDB easy.

Init database then define your models:

schema = new Schema 'pouchdb-adapter'dbName: 'pouchdb'
Note = schema.define 'Note'
    id: String
    title: String
    content: String
    creationDate: Date
# Existence 
Note.exists 123(err, isExist) ->
    console.log isExist
# Find 
Note.find 321(err, note) ->
    console.log note
# Create 
Note.create { id: "321""content":"created value"}(err, note) ->
    console.log note.id
# Update 
note.save (err) ->
    console.log err
# Update attributes 
note.updateAttributes title: "my new title"(err) ->
    console.log err
# Upsert 
Note.createOrUpdate @data.id(err, note) ->
    console.log err
# Delete 
note.destroy (err) ->
    console.log err
# Index document fields 
note.index ["title""content"](err) ->
    console.log err
# Search through indexes 
Note.search "dragons"(err, notes) ->
    console.log notes
# Attach file 
note.attachFile "./test.png"(err) ->
    console.log err
# Get file 
stream = @note.getFile "test.png"(err) ->
     console.log err
stream.pipe fs.createWriteStream('./test-get.png')
# Define request 
map = (doc) ->
    emit doc._iddoc
Note.defineRequest "every_notes"map(err) ->
    console.log err
# Get request results 
Note.request "every_notes"(err, notes) ->
    console.log notes
# Destroy documents through request results 
Note.requestDestroy "every_notes"{key: ids[3]}(err) ->
# Remove request 
Note.removeRequest "every_notes"(err) ->
     console.log err

To build source to JS, run

cake build

To run tests:

cake tests

Cozy is a platform that brings all your web services in the same private space. With it, your web apps and your devices can share data easily, providing you with a new experience. You can install Cozy on your own hardware where no one profiles you.

You can reach the Cozy Community by:

  • Chatting with us on IRC #cozycloud on irc.freenode.net
  • Posting on our Forum
  • Posting issues on the Github repos
  • Mentioning us on Twitter