Giter VIP home page Giter VIP logo

orbit-db-access-controllers's People

Contributors

adam-palazzo avatar aphelionz avatar csdummi avatar dependabot[bot] avatar haadcode avatar haydenyoung avatar latenssi avatar oed avatar phillmac avatar richardlitt avatar shamb0t avatar tabcat avatar zachferland avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

orbit-db-access-controllers's Issues

docs for custom access forget create method

would be good to either update the docs for this in the readme to show the create method; or add a base create method to the interface.

it may be best to update the docs to include the create method being overridden, while also adding an error message to the interface method and making it clear that .create needs to return the class instance.

related: orbitdb/orbitdb#981

Custom CRDT operations for the access controller

How about adding custom CRDT operations like "GRANT" and "REVOKE" so we no longer need an extra database?

The access controller could be able to see the database oplog and build capabilities from GRANT and REVOKE operations.
(By the way, this could solve orbitdb/orbitdb#680)

These custom operations could be ignored by the store since it does not need them.

This way could simplify the process of building complex access controllers that support, for example, time-limited capabilities

Currently, each new feature needs to be implemented in both access controller and access controllers' store.
With this way, each new feature would only be implemented once.

Access Database from AccessController

In order to implement dynamic access roles,
that can change through changes to the
database, that the access controller is supposed
to control, I have to be able to access
the database from the Access Controller.

I saw in the orbit-db-access-controller.js
file, that there is a _db field, that is just set to null though.

orbit-db-io dependency is obsolete

Current orbit-db-io dependency version is 0.3.0 while version 1.0.0 has been released on July 30 2021.

Version 0.3.0 of orbit-db-io is using a now deprecated interface of multiformats' CID (still calling toBaseEncodedString instead of toString). See below for an example of stacktrace I am getting currently when trying to create an OrbitDB instance.

at CID.get toBaseEncodedString [as toBaseEncodedString] (.../node_modules/multiformats/cjs/src/cid.js:94:11)
    at Object.writeCbor [as write] (.../node_modules/orbit-db-access-controllers/node_modules/orbit-db-io/index.js:70:19)
    at IPFSAccessController.save (.../node_modules/orbit-db-access-controllers/src/ipfs-access-controller.js:46:13)
    at Function.create (.../node_modules/orbit-db-access-controllers/src/access-controllers.js:68:20)
    ...

Add topics

I notice this repo is missing topics under the title; perhaps it would be helpful to add the most relevant.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.