Exciting news!Announcing our $4.6M Series Seed. Learn more
Socket
LoveBlogFAQ
Install
Log in

pouchdb-seed-design

Package Overview
Dependencies
4
Maintainers
1
Versions
5
Issues
File Explorer

Advanced tools

pouchdb-seed-design

Seed CouchDB's design documents with PouchDB

    0.3.0latest

Version published
Maintainers
1
Yearly downloads
9,669
increased by48.91%

Weekly downloads

Changelog

Source

Support universal JSON docs and also the browser!

pouchdb-seed-design now supports any type of JSON document as a design doc. It will automatically convert any function in the tree to a string and compare the documents to determine if an update is necessary.

Also added browser support. The browser version exports window.pouchSeed.

Readme

Source

pouchdb-seed-design

Seed CouchDB design documents with PouchDB.

##Build status

Build Status

Installation

npm install pouchdb-seed-design

Usage

var PouchDB = require('pouchdb'); var pouchSeed = require('pouchdb-seed-design'); var db = new PouchDB('http://localhost:5984/design'); var ddoc = { person: { views: { byFirstName: function (doc) { emit(doc.firstName); }, byLastName: function (doc) { emit(doc.lastName); }, byFullName: function (doc) { emit(doc.firstName + ' ' + doc.lastName); } } } }; var promise = pouchSeed(db, ddoc).then(function(updated) { if(updated) { console.log('DDocs updated!'); } else { console.log('No update was necessary'); } });

API

pouchSeed(db, design, cb)

  • db (object, required) - PouchDB (or compatible) database object
  • design (object, required) - design object
  • cb (function, optional) - callback

Creates a set of CouchDB design documents basing on design object. Each key in design object becomes a separate design document called ('_design/' + key).

If no changes between remote design documents and design object are detected, no updates are sent to CouchDB.

Seed will return a Promise that fulfills with false if no updates were necessary, or the result of the bulkDocs operation if changes were pushed. (You will need a Promise shim if you are using an older browser or version of Node.)

The browser version will export window.pouchSeed.

Updates

(0.3.0) 2016-05-08

You can now use docs with absolutely any JSON schema. All functions in the tree are converted to strings. This will future proof pouchdb-seed-design as the design doc standards evolve. Added browser support.

(0.2.0) 2015-09-16

Added support for filters, lists, shows, and validate_doc_update thanks to Will Holley.

Credits

This project is forked from couchdb-seed-design by Maciej Małecki.

A huge round of applause goes to Dale Harvey, Calvin Metcalf, and Nolan Lawson for all the tireless work they put into maintaining PouchDB!

And a special thanks goes to Mirco Zeiss for all the awesome blog articles on how to use Node.js, Express, and CouchDB!

Keywords

Socket

Product

Subscribe to our newsletter

Get open source security insights delivered straight into your inbox. Be the first to learn about new features and product updates.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc