{"id":18497669,"url":"https://github.com/schadokar/election-ethereum-react-dapp","last_synced_at":"2025-09-14T18:20:39.787Z","repository":{"id":42503136,"uuid":"193261854","full_name":"schadokar/election-ethereum-react-dapp","owner":"schadokar","description":"It is an Election Dapp developed on Ethereum Blockchain and Reactjs.","archived":false,"fork":false,"pushed_at":"2023-03-07T17:10:25.000Z","size":2757,"stargazers_count":16,"open_issues_count":9,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-09T17:59:18.125Z","etag":null,"topics":["blockchain","dapp","election","election-dapp","ethereum","nodejs","reactjs","semantic-ui-react","smart-contracts"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/schadokar.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":"schadokar","open_collective":null,"ko_fi":"schadokar","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-06-22T17:35:13.000Z","updated_at":"2024-02-18T16:43:25.000Z","dependencies_parsed_at":"2024-11-06T18:16:49.914Z","dependency_job_id":null,"html_url":"https://github.com/schadokar/election-ethereum-react-dapp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/schadokar/election-ethereum-react-dapp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schadokar%2Felection-ethereum-react-dapp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schadokar%2Felection-ethereum-react-dapp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schadokar%2Felection-ethereum-react-dapp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schadokar%2Felection-ethereum-react-dapp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/schadokar","download_url":"https://codeload.github.com/schadokar/election-ethereum-react-dapp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schadokar%2Felection-ethereum-react-dapp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275145379,"owners_count":25413205,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-14T02:00:10.474Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","dapp","election","election-dapp","ethereum","nodejs","reactjs","semantic-ui-react","smart-contracts"],"created_at":"2024-11-06T13:35:18.959Z","updated_at":"2025-09-14T18:20:39.732Z","avatar_url":"https://github.com/schadokar.png","language":"JavaScript","funding_links":["https://patreon.com/schadokar","https://ko-fi.com/schadokar"],"categories":[],"sub_categories":[],"readme":"# Voting Project\r\n\r\nI created this project for fun to learn the blockchain.  \r\nIt doesn't have proper form validation.\r\n\r\n\u003e DON'T use this project in PRODUCTION. IT is only useful for EDUCATIONAL Purpose.\r\n\r\n## Support this project\r\n\r\n```\r\nbitcoin: 37bRVCouQ3TW5XMMAmkZ5S8t3ueqdLt7Cs\r\nethereum: 0x04676E1A013D9554d96752b7429c92612d44A9AB\r\n```\r\n\r\n## Introduction\r\n\r\nThis voting project is based on Indian Election Process.\r\n\r\nThere are 2 contracts. First is ElectionFactory and Second is Election.\r\nAll the Election will be created using ElectionFactory.\r\n\r\nThis Dapp is for education purpose not for any production.\r\n\r\nServer side Web3js is used for this Dapp.\r\nAll the transaction will be signed by server.\r\n\r\nClient side Web3js will be added soon.\r\n\r\nFollowing are the work still not completed:\r\n\r\n1. Revert message from contract is not replicated on React application.\r\n2. It is assumed that in Every consituency one party must get majority votes.\r\n3. Form Validation is not implemented.\r\n\r\n## System requirement\r\n\r\n1. nodejs 8.x or greater (This dapp is developed on node v8.x)\r\n2. npm install -g ganache-cli\r\n\r\n## Set up\r\n\r\n1. git clone https://github.com/schadokar/election-ethereum-react-dapp.git\r\n2. npm install (Install all the server and ethereum dependencies)\r\n3. npm install (From client directory to install all the react dependencies)\r\n\r\n## Start the DAPP\r\n\r\nOpen 3 command window or terminal\r\nFrom Project Root Directory\r\n\r\n#### Terminal 1: ganache-cli\r\n\r\n#### Terminal 2:\r\n\r\n- Step 1: Compile the contract. It will compile and create the binary in the build folder.\r\n\r\n```\r\ncd ethereum\r\nnode compile.js\r\n```\r\n\r\n- Step 2: Run the server\r\n\r\n```\r\nnpm run dev\r\n```\r\n\r\n#### Terminal 3: cd client \u0026\u0026 npm start\r\n\r\n## Election\r\n\r\nEvery election is active for n minutes. While deploying a new Election duration of election in mins and name of the election must be passed.\r\n\r\nAll the Create operation(Create Consituency, Voter, Candidate) and Close Election will be done by the Admin only.\r\n\r\nAdmin can't be a voter or a candidate.\r\n\r\n### Step 1:\r\n\r\nCompile and Deploy the Election Factory from the home page. http://localhost:3000\r\n\r\nClick on Compile to compile the contract.\r\n\r\n\u003cimg src=\"./images/compile.PNG\"\u003e\u003c/img\u003e\r\n\r\nClick on Deploy to deploy the contract.\r\n\r\n\u003cimg src=\"./images/deploy.PNG\"\u003e\u003c/img\u003e\r\n\r\n### Step 2:\r\n\r\nCreate new Election. Pass duration of election in mins and Name of the election.\r\nClick on Create.\r\n\r\n\u003cimg src=\"./images/create-election.PNG\"\u003e\u003c/img\u003e\r\n\r\n### Step 3:\r\n\r\nGo to the new Election.  \r\nCreate the Consituencies for the election.  \r\nPass the consituency Id -- Integer  \r\nPass the consituency name. String\r\n\r\n\u003cimg src=\"./images/add-consituency.PNG\"\u003e\u003c/img\u003e\r\n\r\n### Step 4:\r\n\r\nClick on Register candidates\r\n\r\n\u003cimg src=\"./images/register-candidate.PNG\"\u003e \u003c/img\u003e\r\n\r\nI have created the extra candidates.\r\n\r\nClick on Candidates to see all the registered candidates.\r\n\r\n\u003cimg src=\"./images/candidates.PNG\"\u003e\u003c/img\u003e\r\n\r\nClick on Register voters\r\n\r\n\u003cimg src=\"./images/register-voter.PNG\"\u003e\u003c/img\u003e\r\n\r\nI have created the extra voters.\r\n\r\nClick on the Voters to see all the registered voters.\r\n\r\n\u003cimg src=\"./images/voters.PNG\"\u003e\u003c/img\u003e\r\n\r\n### Step 5:\r\n\r\nVote Tab: Cast Vote\r\n\r\nCast your vote by selecting the voter. Once the voter is selected its respective constituency candidates will gets loaded.\r\n\r\n\u003cimg src=\"./images/cast-vote.PNG\"\u003e\u003c/img\u003e\r\n\r\nI casted the remaining votes.\r\n\r\n### Step 6:\r\n\r\nResult Tab:\r\n\r\n1. Click on the Close Election to close the election\r\n\r\n\u003cimg src=\"./images/close-election.PNG\"\u003e\u003c/img\u003e\r\n\r\n2. Click on the Election Result to get the election result.\r\n\r\n\u003cimg src=\"./images/voting-result.PNG\"\u003e\u003c/img\u003e\r\n\r\n## License\r\n\r\nMIT License\r\n\r\nCopyright (c) 2019 Shubham Chadokar\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschadokar%2Felection-ethereum-react-dapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschadokar%2Felection-ethereum-react-dapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschadokar%2Felection-ethereum-react-dapp/lists"}