eoscostarica / eos-rate Goto Github PK
View Code? Open in Web Editor NEWEOS Block Producer Ratings and Voting Portal :star2:
Home Page: https://eosrate.io
License: MIT License
EOS Block Producer Ratings and Voting Portal :star2:
Home Page: https://eosrate.io
License: MIT License
I think https://github.com/EOSIO/demux-js is great for listening the blockchain for rate events and store them on the MongoDB
Please setup apollo client and all the state management machinery.
Review the routing strategy and overall code style.
We need a page to see a specific block producer information and graph.
We need to style the radars so they all look the same and according to the design.
Please refer to: https://zpl.io/bPvGEL6
If you do not have access to the Zeplin project contact me.
@murillojorge we need screens for the Rating process from within the BP Profile Page #35
I'm setting up the GraphQL base ... I'll sync up with @rubenabix to continue with #6 right afterwards
We to need run this on the dapp-dev-env.
A user select a group of bps from a list and can compare them on the chart.
We are using http://www.chartjs.org/samples/latest/charts/area/radar.html
Update i18 translate
HOC and replate with withNamespace
.
References:
https://react.i18next.com/deprecated/translate-hoc
please add documentation related to the architecture, components, file structure, usage and any other important notes.
According to the design there should be a hamburger menu always visible and the drawer should be hidden when the home page is active
We are starting with a Mongo DB for persistence, we need to integrate scatter for registering the the votes on chain
Filtering BPs is not as easy for users when using mobile. Promoting the filters from sidebar to main section is probable solution. A dialog can also be a good way to use slider filters.
Filters to main section can be seen here:
https://app.zeplin.io/project/5a58ea3341f76658994e000c/screen/5bbf793bf616cc09a62926f6
Activated slider dialog can be seen here:
https://app.zeplin.io/project/5a58ea3341f76658994e000c/screen/5bbf793a6bc6d61900e2d331
What do you think?
Design the BP profile page
Available data
https://github.com/eoscostarica/eosrate-graphql/blob/master/mainnet-producers.json
There is an odd error related to the redux HOC
Steps to reproduce:
A token holder searches a block producer and rates it using the sliders.
A frontpage that will provide basic info on what the project is all about, and further explanations on how the graphs work. Also an animation will be created as an intro.
Should we have Ratings Decay ?
Life is constantly changing and Block Producers evolve over time, change strategies, they offer new services, etc. I think we should incorporate some sort or Ratings Decay, a simple solution can be displaying just the results of the ratings the were made recently in period of time ( 4 months for instance ).
The blockchain watcher
https://github.com/MonsterEOS/monstereos/tree/develop
Since we might be using different editors, adding an .editorconfig
file helps keep the madness in a cage.
There are some files that we need to get rid off from the project, the node_modules
folder and .DS_Store
files.
URL: #12
We need to create a publication to engage the EOS community in order to see if our rating system qualitative aspects are the right ones.
I've written this draft let me know what you think.
EOSRate is a tool aimed to make the process of voting for EOS block producers easier by providing a visual rating system.
The rating system is based on a radial graph representing the most important qualitative aspects of a block producer (BP for short), populated with ratings provided by the input if the EOS community, and stored on the blockchain. It will also provide basic quantitative information, a compare tool, dynamic BP filtering and links related to each BP, in order to fully inform the potential voter, but also let them share their ratings.
In order to make this tool helpful and worthwhile not only to the ones developing it but to the whole EOS community, we want to hear your opinions. First an mostly about the qualitative aspects that the user will be rating.
We came up with five qualitative aspects that should be important for a potential voter to know about a BP. The rating will be done on a scale from 1 to 10.
Independence: Is the BP Self-Funded, limited or no third party involvement?
1=Not independent, 10=Very independent.
Transparency: Does the BP provide Disclosure of Ownership, Use of Rewards, complete bp.json and financial disclosure?
1=No disclosure, 10=Full disclosure.
Infrastructure Control & Resilience: Is the BP experienced managing infrastructure? Does it have physical access and proven excellence in infrastructure metrics?
1=Delegated control or No information available, 10=Full control, demonstrated infrastructure.
Community Engagement: Does the BP provide education and promote talks, chats, hackathons, conferences, seminars, developer spaces and retreats, related to the EOS network?
1=No community service, 10=Demonstrated community engagement.
Testnets: Does the BP provide dedicated resources to community testnets, leadership in testing and administration of test environments?
1=No Testnet involvement, 10=Demonstrated Testnet Engagement.
So let's say, for example, you want to rate a BP that you have taken the time to know, and consider it to have values of the following magnitude:
Independence = 10, Transparency = 2, Infrastructure= 5, Community= 7, Testnets= 5
And it would look like this! INSERT GRAPH IMAGE
We're working on creating a very friendly UI in order to make the rating system efficient, accessible and informative. But we know this can only happen if we listen to the community, so we will love to hear from you. Do you think the qualitative aspects we chose are the right ones? What else do you think should be rated? ...INSERT MORE QUESTIONS
If you want to learn more about EOS-Rate, check it out on our Github project page. And don't forget to star it!
Note: EOS-Rate is an initiative of EOS Costa Rica.
The block-producers route needs a specific filter box component to be rendered within the side drawer and to be shown when the route has been loaded.
For now it only needs a subheader indicating it's a UI for filtering, and then some toggle filters.
Block Producers
link is selected in the main side drawer, then filter box should uncollapse and navigation to block producers should happen.Use Circle CI
related to eoscostarica/eos-local#26
We need to consider scenarios where people may want exploit the rate system for its own benefit.
Being on chain rating only real EOS accounts will be able to rate BPs.
However, what if these accounts were fake, created with the sole porpuse of rating.
How can we prevent that type of scenario while maintaining a frictionless user experience.
Docs
https://developers.eoslynx.com/
Telegram
https://t.me/lynxapps
As first step make sure you can read the account name from the wallet API.
We need to separate the designs into releases based on the Roadmap https://github.com/eoscostarica/eos-rate#feature-roadmap
use @reactions/component instead of React.Component.
we are currently running both on the yarn lint
command
pretty-quick . && eslint --fix .
If you run them separately they have differences.
AFAIK prettier doesn't check for best practices in JS and React it only formats text ( alignments, paddings, spacing )
Thoughts ?
An unprotected page is needed to list all available BPs, this page needs a few things that will be listed in other tickets.
As soon EOS Local v1 is ready integrate it into this project.
The sidebar must appear collapsed by default. The user can open it with the hamburger menu.
We need to record a 2 minute video for the homepage about EOS Rate.
The goals of the video are:
This is the prototype for the compare tool for BPs.
https://scene.zeplin.io/project/5a58ea3341f76658994e000c/screen/5bbbc5e4eb1a041924c1ec5e
In order to keep the project in shape the following things should be implemented/documented:
We need to serve a list of block producers to app containing relevant info from their profile.
Use info from eosio.system with:
Information from the producerjson contract.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.