Giter Club home page Giter Club logo

ipfs-lite's People

Contributors

asabya avatar srene avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

srene

ipfs-lite's Issues

Same provider in matrix

same provider gets added in matrix

"ProvidedBy": [
                                "QmYLgTfVqNF67JEUbLmfdJB8ErD3nsx3YooJ6RthGsET4Q",
                                "QmdoyRYnEbtFuVwSVXbGKSudkbEJ8X17hGnyc1EtWDHdFJ",
                                "QmNuz7cmJRxeJYHHjkKiPzCvMKjCuMhjovr2zK9HGY9wJJ",
                                "QmXf177ZFqzkVtMYq8pqG7EWz9AZNiKvtm9nfAmzpBA95R",
                                "QmPhjvFNfJLK7kg6CBMhr7jWUzzZ9zaLn18CqvzfR6BZ9e",
                                "QmSAqX7eYdXU64j5jjdiwQ88pq7Mc69MjcjgpB6kpsTscJ",
                                "QmdoyRYnEbtFuVwSVXbGKSudkbEJ8X17hGnyc1EtWDHdFJ",
                                "QmPhjvFNfJLK7kg6CBMhr7jWUzzZ9zaLn18CqvzfR6BZ9e",
                                "QmNuz7cmJRxeJYHHjkKiPzCvMKjCuMhjovr2zK9HGY9wJJ",
                                "QmXf177ZFqzkVtMYq8pqG7EWz9AZNiKvtm9nfAmzpBA95R",
                                "QmSAqX7eYdXU64j5jjdiwQ88pq7Mc69MjcjgpB6kpsTscJ",
                                "QmNuz7cmJRxeJYHHjkKiPzCvMKjCuMhjovr2zK9HGY9wJJ",
                                "QmdoyRYnEbtFuVwSVXbGKSudkbEJ8X17hGnyc1EtWDHdFJ",
                                "QmXf177ZFqzkVtMYq8pqG7EWz9AZNiKvtm9nfAmzpBA95R",
                                "QmPhjvFNfJLK7kg6CBMhr7jWUzzZ9zaLn18CqvzfR6BZ9e",
                                "QmSAqX7eYdXU64j5jjdiwQ88pq7Mc69MjcjgpB6kpsTscJ"
                        ]

Groups

We will introduce GroupDistribution in the next release where one can create a group, add users in the group and share content in that group. We will use CRDT namespace to store the group distribution.

GroupMetadata = {name, ownerId, publickey, groupID(peerID), open}

/groups/{groupID} - GroupMetadata

/group-member/{peerID}/{groupID} - public key of the peer

/group-index/{groupID}/{tag} - Metatag

Group Creation:

  • User calls GroupDistribution.CreateGroup(name, peerID, privateKey) that will return groupID
  • In CreateGroup GroupMetadata is created using the “/groups/{groupID}” namespace
  • Also “/group-member/{peerID}/{groupID}” is created with public key as value

Adding Member in group:

  • If the current user is a member of the group, it can add a member to that group. GroupDistribution.AddMember(peerID, groupID, publicKey)
  • Also “/group-member/{peerID}/{groupID}” is created with public key as value

Listing groups of peer:

  • GroupDistribution.GetGroups(peerID, privateKey) []GroupMetadata, it will get for all the namespaces starting with “/group-member/{peerID}”. For each entry value (publicKey) it will be matched with the given private key. If the publickeys match, “/groups/{groupID}” will be called and GroupMatadata will be added in an array. That array will be the list of groups that the peer is a member of.

Adding file to a group

  • GroupDistribution.Add(groupID, peerID, privateKey, Metatag)
  • First checking if the current peer is a member of the group
  • add /group-index/{groupID}/{tag} - Metatag in

Getting all files of a group

  • GroupDistribution.GetAll(groupID, peerID, privateKey) []Metatag

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.