- 📖 About the Project
- 💻 Getting Started
- 👥 Authors
- 🔭 Future Features
- 🤝 Contributing
- ⭐️ Show your support
- 🙏 Acknowledgements
- 📝 License
This is a decentralized voting system implemented in Solidity that allows participants to cast votes for different proposals. The system includes mechanisms to handle ties and allows the chairperson to assign voting rights to multiple participants at once.
- Solidity - The smart contract programming language used to build the voting system.
- Ethereum - The blockchain platform on which the smart contract is deployed.
- Remix IDE - The integrated development environment used for writing, testing, and deploying the Solidity smart contract.
The main features of this project include:
- Voting Rights Assignment - Chairperson can assign voting rights to participants.
- Vote Counting - Users can cast votes for proposals, and the contract counts them.
- Handling Ties - The contract detects ties between proposals with the same vote count and stores them.
- Flexible Voting System - The system allows for multiple participants to vote and ensures fair counting.
To get a local copy up and running, follow these steps.
In order to run this project, you need to install the following tools:
- Node.js
- Hardhat (for deployment and testing)
Install the required dependencies using:
- git clone git@github.com:rbd3/Voting-system.git
- cd Voting-system
- npm install
👤 Andry Narson
- GitHub: @rbd3
- LinkedIn: @Andry Narson Rabedesana
Some future improvements could include:
- Real-time Voting Updates - Implementing an event listener to notify when a new vote is cast.
- Extended Proposal System - Allowing for more complex proposal criteria and voting mechanisms.
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
Give a star⭐️ or a thumbs up 👍 if you like this project! You can visit my GitHub profile for more of my projects.
- My family who supported me.
This project is MIT licensed.