A full-stack decentralized application for tokenized voting built on Ethereum. This project allows users to create proposals, vote on them using tokens, and view voting results in a transparent manner.
This repository contains a complete implementation of a tokenized voting system with:
- Smart contracts for voting and token management
- Frontend application for user interaction
- Backend services for data processing
- Create and manage voting proposals
- Token-based voting system (1 token = 1 vote)
- Secure and transparent voting process
- Real-time voting results
- User-friendly interface
- Blockchain: Ethereum, Solidity
- Frontend: React.js
- Backend: Node.js
- Smart Contract Development: Hardhat
- Testing: Chai, Mocha
/contracts: Solidity smart contracts/frontend: React-based user interface/scripts: Deployment and utility scripts/test: Smart contract tests
- Node.js (v14+)
- npm or yarn
- MetaMask or another Ethereum wallet
- Clone the repository:
git clone https://github.com/alfonsotech/full-stack-tokenized-voting-encode4.git
cd full-stack-tokenized-voting-encode4- Install dependencies:
npm install- Compile the smart contracts:
npx hardhat compile- Deploy to a local network:
npx hardhat node
npx hardhat run scripts/deploy.js --network localhost- Start the frontend:
cd frontend
npm install
npm start- Connect your wallet to the application
- Acquire voting tokens
- Browse active proposals
- Cast your votes
- View results in real-time
Run the test suite:
npx hardhat testThis project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Encode Club for inspiration and support
- Ethereum community for resources and tools