@elliott5 I just checked Kivik, and it seems like it will fit a nosql API naturally. The subset of operations needed to make it work should be reasonably small, and it will be great if you could make a prototype for CouchDB/PouchDB.
In worst case, we can always fallback to KV API and/or IndexedDB.
Also, it will be great to hear some feedback on NoSQL API - if there is a set of operations that is hard to implement in any of these DBs with current design, it's a good time to change API for better compatibility. I'm currently working on this part to be able to include ElasticSearch backend as well.
Transactions are a good point, but they are also weak in Mongo. In most case we only need an atomic increment on one document field to make node ref count work. Multi-quad transactions might work properly in Mongo, but if any of JS DBs can properly implement it - I will expose hooks for it.