EOS Rate is a community-driven visual rating tool that allows EOS token holders to easily rate Block Producers in distinct categories.
The rating system is based on a radial graph representing the most important qualitative aspects (letβs call them categories) of a block producer, 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 filtering and links related to each BP (block producer), in order to fully inform the potential voter, but also let them share their ratings.
Each EOS account can submit their rating for each BP as many times as they like facilitating a "liquid democracy", however, the weighting is independent from the amount the EOS account holds. One account = one submission of equal weight.
It will support proxy profile pages and voting.
Table of Contents generated with DocToc
- Feature Roadmap
- Prototypes and Assets
- User Flow
- Architecture
- Development Setup
- Contributing
- About EOS Costa Rica
- License
- Contributors
Version 1.0 ( November 30 )
- List and Search Block Producers.
- Scatter and Lynx Integration.
- Autogenerated Block Producer profile pages based on information from eosio.system containing:
- Information from the producerjson contract.
- Community ratings results.
- Rating UI for token holders to rate that block producer.
- Compare Block Producers page:
- Ability to superpose different BPs ratings flake charts.
- Home page with explanation and instructions.
- Languages: English & Spanish.
Version 1.2
- Ability to Vote for a block producer directly on their profile page.
- Add comments when rating. ( review, like Yelp )
- Languages: Chinese and Korean.
- Filtering Block Producer List
- by Strengths: transparency, community, infrastructure, testnets, tooling.
- by Region.
Version 1.3
- List and search proxies.
- Proxies landing page with:
- Proxy Block Producers list from the proxy contract.
- Proxy Info from the eos-proxyinfo contract.
- Ability to vote for the proxy.
Version 1.4
- Filtering proxies list. ( tbd which attributes will be used for filtering )
- Ability to vote for multiple producers at the same from the BP Comparison tool.
Version 1.5
- Earn tokens by rating. ( maybe something like Karma )
- Server Side Rendering
https://scene.zeplin.io/project/5a58ea3341f76658994e000c
This project is based on EOS DApp Boilerplate.
Basic knowledge about Docker, Docker Compose, EOS and NodeJS is required.
- Video tutorial Docker Containers | Learn Docker Basics in 30 Mins
- Docker https://docs.docker.com/install/.
At least 10GB RAM (Docker -> Preferences -> Advanced -> Memory -> 10GB or above)
Make sure you are running EOSLOCAL.
docker ps
will display the list of your containers in your console like:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e5b53cc3b51c ... ... ... ... ... eoslocal_eos-wallet
4194888a9b2f ... ... ... ... ... eoslocal_nginx-proxy
de3ed242d357 ... ... ... ... ... eoslocal_ipfs
e17e30af7d58 ... ... ... ... ... eoslocal_eosio
d89f72110588 ... ... ... ... ... eoslocal_mongo
Then make sure you add the eoslocal_eosio alias
alias cleos='docker exec -i eoslocal_eosio cleos -u http://eosio:8888 --wallet-url http://eos-wallet:8901'
Build and deploy EOS Rate contract
docker cp ./contracts/eosrate eoslocal_eosio:/opt/application/contracts/eosrate
docker exec -it eoslocal_eosio chmod +x /opt/application/contracts/eosrate/build.sh
docker exec -it eoslocal_eosio /opt/application/contracts/eosrate/build.sh
docker exec -it eoslocal_eosio /opt/application/scripts/unlock.sh
// Create contract account using eoslocalusra PUBLIC KEY
cleos create account eosio eosrate EOS5k6Jht1epqZ2mnRLFVDXDTosaTneR6xFhvenVLiFfz5Ue125dL -p eosio@active
// deploy account
cleos set contract eosrate /opt/application/contracts/eosrate -p eosrate@active
// TEST contract
cleos push action eosrate upsert '{"rater_account":"eoslocalusra", "json": "{\"costaricaeos\":{\"transparency\":9,\"testnets\":8,\"tooling\":3,\"infra\":6,\"community\":10},\"alohaeos\":{\"transparency\":10,\"testnets\":8,\"tooling\":7,\"infra\":6,\"community\":10}}"}' -p eoslocalusra@active
cleos get table eosrate eosrate rates --lower eoslocalusra --limit 100
git clone git@github.com:eoscostarica/eos-rate.git
cd eos-rate
make start
See EOS DApp Boilerplate for details.
We use a Kanban-style board. That's were we prioritize the work. Go to Project Board.
The main communication channels are github issues and EOS Costa Rica's Discord server. Feel to join and ask as many questions you may have.
Our weekly sync call is every Monday 1:00 AM UTC. meet.eoscostarica.io.
Contributing Guidelines https://developers.eoscostarica.io/docs/open-source-guidelines.
Please report bugs big and small by opening an issue
We challenge ourselves to provide the EOS platform with a strong geographical and political diversity by running the most robust EOS Block Producer possible from Costa Rica; We pledge to leverage our talent, experience, and sustainable internet resources to meet such an important challenge.
EOS Costa Rica supports the EOS.io community by maintaining and contributing to open source initiatives, meetups and workshops.
MIT Β© EOS Costa Rica
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!