vexy / voting_platform Goto Github PK
View Code? Open in Web Editor NEWSmart-contract implementation of public polling station.
Home Page: https://infoportal.app
License: GNU Lesser General Public License v3.0
Smart-contract implementation of public polling station.
Home Page: https://infoportal.app
License: GNU Lesser General Public License v3.0
Make sure the contract can:
Extract question table forming as standalone component
Add a method that checks if user has been registered to the system.
Extract platform contract capabilities as standalone (private) class in Utilities.
It is essentially a wrapper around platform features with injected, already fabricated provider.
Load network config from .env
More details: https://docs.metamask.io/guide/getting-started.html
Create simple shared service to provide web3 needs.
Simple screen containing:
Marking desired answer and clicking Vote
button, user will be prompted to sign and verify transaction.
Later on, Report
button should be added.
Make sure user can:
User can score for a specific option
Provide data about total number of users on the platform.
Implement custom popups
Perform Metamask method execution on:
Mumbai
Polygon test-netQuestion can be previewed in separate page.
Page elements should contain:
Add "report" button in the main list of questions.
Make sure user is actually allowed to report (check for prior actions).
Make sure every contract method can fail gracefully.
Add method for voting extra options available on the main platform contract.
Loke font-awesome or similar
Depends on: #41
Add translated screenshots.
Improve contracts by adding custom emit
and Event
s.
Reference:
https://docs.ethers.org/v5/api/providers/provider/#Provider--event-methods
Develop ERC20
based voting token, spendable on the (#3).
Basic functionality includes:
See more about ERC20 @ OpenZeppelin
Settings page to help with modifying network properties
Elements and functionality:
Upon completing form, user will be prompted to sign the transaction and verify the costs.
Setup local environment and make sure Hardhat CLI
can work without problems.
Create simple Question
contract, providing following features:
Provide basic functionality for the contract caller.
Add more tests to Questions
contract to cover basic functionality.
Translate UI to english
Simple screen listing all the polls in the system
Update deployment scripts to both local, test-net and (later) main-net.
Page structure:
Register
buttonCreate common Question
model that can be used across the codebase.
Expand QuestionInfo
structure to contain question description data.
Switch constructor parameters to calldata
.
Modal allowing user to vote for a specific Question
Make sure something is entered as question possible answer(s).
Show error popup to alert the user of running errors.
Users can search list of questions, by typing (part of) name of the question in a searchbox.
Searchbox is simple HTML input field.
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.