Skip to content

Brainstorm rationale

Mathieu Leplatre edited this page Apr 21, 2016 · 19 revisions

Landscape

Technologies

Kinto

  • PostgreSQL / Redis / [...]
  • Transactions
  • Sync API (Offline first)
  • pagination
  • pluggable auth
  • private data per user
  • sorting/filtering on arbitrary field
  • JSON schema validation
  • plugin system via Pyramid/Cliquet
  • single record sharing
  • pub/sub for notifications
  • attachments/files API

see roadmap

CouchDB

  • Requires definition of permanent views
  • Map/reduce API
  • No sorting
  • No validation
  • No permissions

Redis

  • No sorting/filtering on arbitrary field

ElasticSearch

  • Poor data integrity

Cozy data system

  • CouchDB
  • Permissions via tokens
  • File attachments
  • No sorting/filtering on arbitrary fields

https://github.com/cozy/cozy-data-system/wiki/Api

Firefox Sync

  • MySQL
  • No sorting/filtering on arbitrary fields

RemoteStorage

PouchDB

  • Replication metaphor
  • 1 user = 1 couchdb

Hoodie

Deployd

Loopback

Products

Firebase

Parse

Kinvey, Backendless ...

Swarm

https://github.com/gritzko/swarm

Morphis

https://morph.is

Telepat

https://github.com/telepat-io/telepat-api

Gun DB

http://gun.js.org

Kuzzle.io

http://kuzzle.io/

OPENi personal cloudlet

http://www.openi-ict.eu/

Reindex

  • GraphQL
  • Not open source

DreamFactory

https://www.dreamfactory.com/

BaasBox

http://www.baasbox.com/

Usergrid

Apache Usergrid

summadb

CouchDB-like with fined-grained permissions

https://github.com/fiatjaf/summadb

iceden

poorman parse https://github.com/jprichardson/iceden

deepstream

http://deepstream.io/

PubNub

https://www.pubnub.com/

Syncano

https://www.syncano.io/

Neutrino

https://github.com/neutrinoapp/neutrino

Design

Field names

  • _id: CouchDb (Cozy), Mongo, ElasticSearch, Eve, PouchDB;
  • id: Kinto :(