{"id":23263418,"url":"https://github.com/rohitroy-github/vite-voting-dapp","last_synced_at":"2026-04-10T07:41:10.507Z","repository":{"id":164309784,"uuid":"639745092","full_name":"rohitroy-github/vite-voting-dapp","owner":"rohitroy-github","description":"This is a voting dapp made using ViteJS and Hardhat environment.","archived":false,"fork":false,"pushed_at":"2025-04-04T08:31:10.000Z","size":130,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T09:30:53.610Z","etag":null,"topics":["ethersjs","hardhat","nodejs","smart-contracts","solidity","vite","vitejs","web3"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rohitroy-github.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-05-12T06:13:21.000Z","updated_at":"2025-04-04T08:31:14.000Z","dependencies_parsed_at":"2023-05-25T18:38:03.771Z","dependency_job_id":null,"html_url":"https://github.com/rohitroy-github/vite-voting-dapp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rohitroy-github/vite-voting-dapp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitroy-github%2Fvite-voting-dapp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitroy-github%2Fvite-voting-dapp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitroy-github%2Fvite-voting-dapp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitroy-github%2Fvite-voting-dapp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rohitroy-github","download_url":"https://codeload.github.com/rohitroy-github/vite-voting-dapp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitroy-github%2Fvite-voting-dapp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271854475,"owners_count":24834453,"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-08-24T02:00:11.135Z","response_time":111,"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":["ethersjs","hardhat","nodejs","smart-contracts","solidity","vite","vitejs","web3"],"created_at":"2024-12-19T14:17:56.979Z","updated_at":"2026-04-10T07:41:10.501Z","avatar_url":"https://github.com/rohitroy-github.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Decentrocast (EVM Based)\n\n**Decentrocast** is a **decentralized voting application** built with **ViteJS** to provide a secure, transparent, and tamper-resistant voting experience.\n\nThe app currently supports both **Localhost** and the **Ethereum Sepolia Testnet** (via Alchemy RPC).\n\n---\n\n## Snapshots\n\n| ![image](https://github.com/user-attachments/assets/d69f3f21-79c6-4d8a-96e0-40de3fe39da4) | ![image](https://github.com/user-attachments/assets/30bcd94e-38e4-4ad7-8f13-ebed0c1d767c) |\n| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |    \n| ![image](https://github.com/user-attachments/assets/ea5b6d28-38fe-4832-a8b4-7252f2c3350b) | ![image](https://github.com/user-attachments/assets/fd389ae1-9463-481f-82b5-76df949bf962)                                                   |\n\n---\n\n## Features\n\n- **Wallet-Based Authentication** - Connect with MetaMask to participate in voting.\n- **One Wallet, One Vote** - Each wallet address can cast only one vote.\n- **Live Voting Status** - View whether voting is active or finished.\n- **Real-Time Candidate Table** - See candidate list and vote counts in the UI with live updates.\n- **Dynamic Countdown Timer** - Visual progress bar showing remaining voting time that updates every second.\n- **Vote Confirmation** - See which candidate you voted for with their ID and name.\n- **Voting Loader** - Real-time spinner feedback while vote is being submitted and processed.\n- **Transparent Final Results** - Display winner and final vote totals after voting ends.\n- **Multi-Network Ready** - Supports Localhost and Sepolia deployment workflows.\n- **Candidate Search** - Vote by entering either the candidate index or name.\n- **Developer-Friendly Code** - Well-commented Solidity smart contract for easy understanding.\n\n---\n\n## Tech Stack\n\n### Frontend:\n\n- **Vite JS + React** - Fast and modern frontend development\n- **Tailwind CSS** - Utility-first styling\n- **Ethers.js** - Wallet connection and contract calls from UI\n\n### Backend:\n\n- **Node.js** - Server-side runtime\n- **Hardhat** - Ethereum development framework\n- **Solidity** - Smart contract implementation\n- **Metamask Wallet** - User authentication and transaction signing\n- **Alchemy** - Web3 RPC infrastructure for Sepolia\n\n---\n\n## Quick Setup Guide\n\nFor a complete step-by-step guide to clone and run Decentrocast locally, see the **[Local Setup Guide](./LocalSetupGuide.md)**.\n\n---\n\n## Localhost (Steps To Run / Execute)\n\n### backend-hardhat:\n\n1. Navigate to the backend folder:\n   ```sh\n   cd \"backend-hardhat\"\n   ```\n2. Install dependencies:\n   ```sh\n   npm install\n   ```\n3. Compile contracts:\n   ```sh\n   npx hardhat compile\n   ```\n4. Deploy contract (choose one):\n   ```sh\n   # Localhost\n   npx hardhat run scripts/deploy.js --network localhost\n\n   # Sepolia\n   npx hardhat run scripts/deploy.js --network sepolia\n   ```\n5. Copy the deployed **CONTRACT_ADDRESS** from terminal output and update:\n   - `frontend-vite/src/constants/constant.js`\n\n### Frontend:\n\n1. Navigate to the frontend folder:\n   ```sh\n   cd frontend\n   ```\n2. Install dependencies:\n   ```sh\n   npm install\n   ```\n3. Run the development server:\n   ```sh\n   npm run dev\n   ```\n4. Open the local URL shown in terminal (usually `http://localhost:5173`) and connect MetaMask.\n\n---\n\n## Project Status \u0026 Contributions\n\nThe project is functionally complete and actively being improved.\n\nSuggestions, issue reports, and pull requests are always welcome.\n\nIf you like the project, leave a ⭐! 😊\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohitroy-github%2Fvite-voting-dapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frohitroy-github%2Fvite-voting-dapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohitroy-github%2Fvite-voting-dapp/lists"}