The Online Voting System is a secure and user-friendly web application designed to facilitate digital elections. This system streamlines the voting process by allowing authenticated users to request voter IDs, nominate themselves, and cast votes in active elections. Admin users can manage elections and voter participation efficiently.
- Secure login system for users and admin
- Role-based access control (User/Admin)
-
Voter ID Request
Users can request the creation of their voter ID for election eligibility. -
Nomination Request
Eligible users can submit requests to nominate themselves for specific elections. -
Voting
Authenticated users can cast their vote in ongoing elections for their preferred candidate. -
Dashboard View
Users can view:- Status of their requests
- Active and upcoming elections
- Past election participation and results
-
Request Management
Admin users can:- Review user requests (Voter ID, Nomination)
- Approve or reject requests with status updates
-
Election Management
Admins can create and manage elections, including defining timeframes and candidates. -
Voter List
Admins can view and manage the list of registered voters.
- React.js
- JavaScript
- HTML, CSS
- Tailwind CSS
- PHP
- Laravel Framework
- MySQL
Make sure the following are installed on your local machine:
- Node.js and npm
- PHP >= 8.2
- Composer
- MySQL
- Git
-
Clone the repository
git clone https://github.com/mohdfaruk-developer/voting-system.git
-
Navigate to the project directory
cd online-voting-system
-
Install PHP dependencies
composer install
-
Create a copy of the .env file
cp .env.example .env
-
Generate application key
php artisan key:generate
-
Configure .env with your MySQL database credentials
-
Run migrations
php artisan migrate
-
Install node dependencies
npm install
-
Start the node development server
npm run dev
-
Start the PHP development server
php artisan serve