Code Monkey home page Code Monkey logo

dvote-polygon's Introduction

header.png

⚙️ dvote-polygon

dvote-polygon is a typescript library integrated into the [polygon] (https://polygon.technology/) network.

This library is tested on the polygon Mumbai test network using quicknode provider.
This library is tested on Ganache, which is a personal Ethereum blockchain.

Installation

type this command in CMD or Terminal
   npm i dvote-polygon

Usage

First Set your Private Key in Dotenv
PRIVATE_KEY = YOUR_PRIVATE_KEY_OF_CRYPTO_WALLET_ADDRESS

Import the Class

import {Dvote}  from "dvote-polygon";

Create New Instance

params => endpointUrl:string , renewContract:boolean
second parameter is false by default and it could be true if you want to deploy new contract! you can leave it blank if you want to use previous contract.
const endpointUrl = "http://127.0.0.1:8545" // your provider

const dv = new Dvote(endpointUrl, renewContract) // create new instance

Compile Vote.sol Contract

params => abi:Array, bytecode:string
let abi = dv.compile().abi()
let bytecode = dv.compile().bytecode()

Deploy Contract

params => abi:Array, bytecode:string
dv.deploy(abi, bytecode).then(data=>{

  result = data;

})

Create a Poll

params => ballotName:string, voteOptions:string[]
let ballotName = "EBAY-SCORES"
let voteOptions = ["Perfect", "Good", "Bad", "Worst"]

dv.createVote(voteName, voteOptions).then(data=>{

  result = data;

})

Add Vote

params => fromAddress:string, ballotName:string, voteOption:string
let fromAddress = "any User Wallet Address"
let ballotName = "EBAY"
let voteOption = "Perfect"

dv.addVote(voteName, voteOption, fromAddress).then(data=>{

   result = data;
    
})

Change your Vote

you can change your casted vote to another option
params => fromAddress:string, ballotName:string, newOption:string
let fromAddress = "any User Wallet Address"
let ballotName = "EBAY"
let newOption = "Good"

dv.changeVote(ballotName, newOption, fromAddress).then((data:any)=>{

    result = data;

})

Vote Result

show the result of voting
let ballotName = "EBAY"

dv.voteResult(ballotName).then((data:any)=>{

    result = data;

})

contribution

If you are interested in contributing to this project, I will be very glad ^__^

License

MIT

dvote-polygon's People

Contributors

xmrrabbitx avatar

Stargazers

FATEMEH  avatar JordiSM avatar marjan avatar

Watchers

 avatar

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.