dappkit / aviondb

A decentralised database with MongoDB-like developer interface (Fully Compatible with OrbitDB)

Home Page:https://twitter.com/aviondb

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Feature list for AvionDB

vasa-develop opened this issue · comments

commented

This issue represents a list of features that will be worked on in the near future releases.

Note that this is just a list of features. Any feature that is decided to be worked upon, will have its own separate issue.

Feature Format


  • Feature Title ( Link to related issue/PR )
Add some context to clarify the feature in question.

  • Here if the checkbox is checked, then that means this feature is/has been worked upon.
  • Each checked feature should have a link to the related issue/PR where it is being discussed.
  • Each feature should have a description that clarifies the context of the feature in question.

Feature List

  • File Management Support (#5)
    Out-of-the-box support for adding/fetching/removing files using AvionDB.

  • Access Control
    Access control for managing authentication, authorization between AvionDB (OrbitDB) peers.

  • Secure Pub-Sub
    Out-of-the-box encryption over pub-sub for secure communication between AvionDB (OrbitDB) peers.

  • Store (Collection) Sharding
    In some cases, when we store a lot of data within the same Collection, the performance (read/write/replicate) of AvionDB can become worse. A possible method to mitigate this could be sharing the Collections and managing the set of "shard" Collections to give a notion of a single Collection.

  • Add support for events
    Events on insertion, deletion, and set of a document. Non-essential feature, a "nice to have" feature.

  • GUI Dashboard to visualize & interact with the data in AvionDB.
    A GUI dashboard like Mongo Compass for AvionDB. Existing Resources

  • An optional, out-of-the-box pinning service for persistent data storage on AvionDB.
    There are 2 options here:

  • OrbitDB community is starting a public Orbitdb store pinning service: nebulousity, for general users.

  • Dappkit will have its own Orbitdb store pinning service for production use-cases.

  • Add support for common Cursor methods (#12)
    Change the API signatures to allow passing cursor method options & add support for limit.

  • Add support for "Transactions"
    Add Transactions support for atomicity, sessions.

  • Add support to list databases created by AvionDB (#801711)
    Add a static function like AvionDB.listDatabases() to list the Databases.

  • Support for Schema for AvionDB (#23)
    Support for MongoDB-like Schemas.