Hi ermouth, great to see progress on couchapp development. I am very interested to have a look at Couchbox. My GitLab nick is h4ki. By the way, Damien and Volker are also back on track, see
http://damienkatz.net/2017/05/23/notes-on-building-noise-a-json-search-engine-written-in-rust/ and https://noisesearch.org/ and https://try.noisesearch.org/demo/1/schema Would be a killer feature to use it for deep hierarchical CouchDB documents. Cheers, harald On Mon, May 29, 2017 at 3:09 PM, ermouth <ermo...@gmail.com> wrote: > I‘m happy to pre-announce new query server – Couchbox. > > Couchbox is an augment for CouchDB, that extends built-in query server with > so long desired hooks/triggers and async api. > > Both api methods and hooks are defined as branches of design documents, > very similar to lists, shows and updates. Unlike native QS functions, > Couchbox hook and api functions are async and see extensions as this._email > or this._cache or whatever, bound to current design doc. Not to mention you > can query CouchDB during function execution. > > Couchbox is a combo of CouchDB, node.js 7+, Redis and, optionally, nginx. > There is a script to install all dependencies in nearly one click. > > Couchbox employs one of best CouchDB principles: ‘deploy it, start it once > and forget’. That‘s why Couchbox is configured using native CouchDB config, > so it can be (and intended to be) managed from Futon. > > Since Couchbox runs in node.js as a swarm of VMs inside several workers, > api and hooks functions fully support ES6 syntax. It also means adding new > plugins (new functions visible as this._something) to Couchbox is an easy > task. Just take known node.js lib and wrap it with several lines of code – > and you have new plugin, available from inside your hooks or api. > > Couchbox mimics CouchDB practices whenever possible. Request object, > inhaled by api functions is well known Req object like in Couch, require() > and isArray() work exactly same, so making old lists/updates work in new > Couchbox literally takes minutes (and we sometimes observed more then order > of magnitude performance boost for old lists running in new QS). > > Couchbox is specifically designed to work in large distributed nets of > CouchDB instances, actually it was created to run pretty complex commercial > project (which it now runs). > > ---- > > We plan to make Couchbox fully OSS at the end of June, now it lives in > restricted dev repo. If somebody wants to preview and play with it right > now, please, register at Gitlab and let me know your nickname, I‘ll grant a > guest access. > > Questions are welcomed. > > ermouth > -- -- Dipl.-Inf. Harald R. Kisch Falkenstraße 19C 81541 München Germany Mobil DE: +49 (0) 176 56 58 58 38 Skype: harald.kisch Mail: haraldki...@gmail.com