OpenViSTAI · Agents · Blockchain · Crypto
Menu
DAOs & Governance

Decentralized Voting System

Decentralized Voting System is an open-source web election application that pairs voter and administrator interfaces with Ethereum smart contracts and a MySQL-backed FastAPI component. It supports voter authentication, ballot casting, candidate management, election-date settings and result monitoring.

Independent OpenViST project profile, based on linked sources.

Decentralized Voting System — OpenViST project profile in DAOs & Governance.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Consider it when studying or adapting a locally run election application that combines an Ethereum contract workflow with voter management and an administrator panel.

Who it is for

  • Developers examining a self-hosted blockchain voting application.
  • Teams exploring an election workflow with separate voter and administrator interfaces.

Documented uses

  • Authenticate voters and authorize access using JWT.
  • Let voters review candidate information and cast ballots remotely.
  • Let administrators manage candidates, set voting dates and monitor results.
  • Record votes on Ethereum for transparent, tamper-resistant records.
Before you choose

Requirements & limits

The repository is public and lists an MIT license. The README says the project is no longer maintained.

  • The published setup uses Ganache and a localhost MetaMask network.
  • Voter records are also handled through a MySQL database and FastAPI service.
  • The README documents specific local prerequisites: Node.js 18.14.0, Python 3.9 and MySQL on port 3306.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the application on a local development network

Prepare the documented local components and start the voting app at localhost:8080.

Before you start

  • Node.js 18.14.0 and Python 3.9
  • MetaMask and Ganache
  • MySQL on port 3306
  • Truffle and the project's Node.js and Python dependencies

Steps

  1. Clone the repository and install Ganache, MetaMask, Truffle, Node.js dependencies, and the listed Python packages.

  2. Create the Ganache workspace and configure MetaMask for the documented localhost network; import a Ganache account.

  3. Create the voter_db MySQL database and voters table, then update database credentials in Database_API/.env.

  4. Compile the contracts, bundle the browser app, start the Node.js and FastAPI servers, and run the Truffle migration.

Expected outcome

The README says the voting app should be available at http://localhost:8080/ after these steps.

Guide limitations

  • The instructions configure a local Ganache network, not a public Ethereum deployment.
  • The README states that the project is no longer maintained.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
14 October 2026
Original website title
Krish-Depani/Decentralized-Voting-System · Official homepage title · retained in its source language