Giter Club home page Giter Club logo

dapp-universities's People

Contributors

ceteri avatar geoffkinder avatar rbharath avatar sofiatti avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

sofiatti

dapp-universities's Issues

Add "delete listing" functionality

As a university founder using dapp-universities, I want to be able to remove my listing so that I can opt-out of the database.

Acceptance Criteria

  • As a user, I can see the listings I entered
  • As a user, I can pick one to remove from the list

Adding encryption

As a person going through the demo, I want to use encryption so that I can understand basic concepts of safely handling data.

Acceptance Criteria

  • Data is encrypted when at rest
  • Keys are stored in a separate place
    Please also note:
  1. The "key management" and user model is super trivial at first: it's a JSON with user tuples as ("email", "pwd-hash") based on bcrypt_sha256
  2. In the future, we should consider using metamask
  3. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

First page

As a person going through the demo, I want to see the options university founder, student, and reviewer so that I understand the following actions respectively: applying for a listing, retrieving all listings, and voting for a listing.

Acceptance Criteria

  • Page with 3 buttons: "I am" a university founder, a student, or a reviewer
  • Clicking a university founder takes you #2 flow
  • Clicking a student takes you to the last page in #2 flow. That is, it just lists all the universities that have been submitted so far.

Please also note:

  1. The flow for the reviewer is a lower priority and is defined in a future issue.
  2. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

MVP for demo

As a person going through the demo,
I want to apply for a listing so that I understand how to add data to a data marketplace.

Acceptance Criteria

Run locally w/ Ganache. Single browser session only. No need for anything server side, e.g. API, data storage.

  • Page to enter the university name with a submit button. Candidate automatically gets approved as a listing. The university name is hashed and sent as the listing name for the TCR.
  • Next page with all universities listed so far, including the one submitted in the previous page.

Please also note:

  1. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

wire-frame

Querying data

As a person going through the demo, I want to get queried/ sorted data so that I can retrieve the top 10 schools.

Prior completion of #4 and #5 is needed.

Acceptance Criteria

  • Add a show top 10 button to the bottom of the page that returns a list of all universities in the database.
  • If the button is clicked, the university list shows only the top 10 schools and their rankings

Please also note:

  1. Changed to top 5 instead of top 10 for speed.
  2. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

[Computable.js] Contract wrappers

Refactor computable.js action creators to use contract wrappers that encapsulate the instantiation/fetching of contracts.

  • web3
  • token
  • attribute store
  • dll
  • participant
  • parameterizer
  • registry
  • voting

Adding ranking field in addition to university name field

As a person going through the demo, I want to add a university ranking in addition to name so that I can retrieve a list with top universities.

Acceptance Criteria

  • After clicking university founder the page to enter the university name has a field to enter ranking as well
  • Stores ranking in addition to university name.
  • The next page in this uni founder flow is still just a list with all the past entries but now with uni name and ranking. No sorting needed

Please also note:

  1. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

Demo in testnet

As a person going through the demo, I want to use Testnet so that I can have a closer experience to the one I would have as a user.

Acceptance Criteria

  • Demo DApp uses Testnet instead of running locally.

Please also note:

  1. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

Different token assignment strategies

As a person going through the demo, I want to have tokens assigned to me based on reputation (e.g.: I have a .edu email address or I am an established reviewer so I should get 10X the amount an average user would get) so that I can understand token incentives and economics better.

Acceptance Criteria

  • TBD

Please also note:

  1. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

Reviewer flow

As a person going through the demo, I want to go through the reviewer flow so that I can understand how voting happens.

Acceptance Criteria

  • When a user clicks the button reviewer in #3, a page should load with all the listing candidates from the last 3 minutes (actual time TBD)
  • That page should have a challenge button.
  • If the person challenges the candidate, that is enough to not grant it approval
  • After clicking the button, the page with all the listings in our database shows up. If the person downvoted the candidate in the flow above, the candidate did not become a listing, therefore will not be in this page.

Please also note:

  1. In the future, we may want to make it so students and university founders can also vote. To be discussed.
  2. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

Data Storage Integration

As a person going through the demo, I want a data storage integration so that I can understand off-chain storage.

Prior completion of #4 is desired

Acceptance Criteria

  • University names and rankings are saved in an external storage space

Please also note:

  1. If a conversation about this issue is happening when it is being worked on (i.e., has an assignee),
    the outcomes should be documented here (not in the comments).

Resources:

Add image here.

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.