RoundsBase is a smart contract developed for the Ethereum blockchain. It enables a unique voting mechanism where users can participate in multiple rounds of voting. The contract includes features such as user registration, vote casting, round management, and an elimination logic based on voting outcomes.
- User registration for participating in voting rounds.
- Voting mechanism with support for multiple rounds.
- Dynamic round management with start and end functionalities.
- Elimination logic to filter candidates based on vote counts.
- Configurable settings for round duration, vote limits, and more.
This project requires Node.js and npm (Node Package Manager). Ensure you have them installed on your machine.
-
Clone the repository:
git clone https://github.com/crazyrabbitLTC/rounds
-
Navigate to the project directory:
cd roundsbase-contract
-
Install dependencies:
npm install
To run the test suite:
-
Compile the smart contracts:
npx hardhat compile
-
Run the test suite:
npx hardhat test
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
. - Make your changes and commit them:
git commit -m 'Add some feature'
. - Push to the original branch:
git push origin feature/your-feature-name
. - Create the pull request.
Alternatively, see the GitHub documentation on creating a pull request.
This project is licensed under the MIT License.
Made with ❤️ by Dennison Bertram (and ChatGPT)