Voice Talent is a full-stack, secure voting system developed using Laravel to manage and track real-time voice talent competitions. The platform ensures data integrity through strict voting logic, allowing registered users to support their favorite contestants while providing admins with a comprehensive management suite.
- Secure Registration: New users can register and join the system as a standard "User" to participate in voting.
- Strict Voting Logic: Sophisticated backend validation ensuring a user can cast only one vote per contestant, preventing duplicate or unfair entries.
- Live Leaderboard: Users can monitor real-time vote counts and the current standings of all voice talents.
- Responsive UI: Fully optimized using Laravel Blade and Bootstrap for seamless mobile and desktop access.
- Contestant Management (CRUD): Full power to Add, View, Edit, and Delete contestant profiles and their information.
- User Management: Monitor all registered users and manage their access permissions within the platform.
- Votes Analytics: A dedicated dashboard for admins to oversee total votes, track results, and ensure the integrity of the competition.
Frontend:
- Laravel Blade (Templating Engine)
- Bootstrap 5 (Responsive UI Styling)
- JavaScript (Dynamic UI Interactions)
Backend:
- Laravel (MVC Architecture)
- MySQL (Relational Database)
Tools:
- Composer (Dependency Management)
- Git/GitHub (Version Control)
- Clone the Repo:
git clone [https://github.com/Amandi2001/voting-system.git](https://github.com/Amandi2001/voting-system.git)
- Setup Dependencies:
cd voting-system composer install npm install && npm run dev
- Configure Environment:
- Configure your local server (e.g., XAMPP or WAMP).
- Create a database named voting_system.
- Copy .env.example to .env and update your database credentials (DB_DATABASE, DB_USERNAME, DB_PASSWORD).
- Database Migrations:
php artisan migrate
- Start the Project::
php artisan serve
Project Structure:
- /app/Http/Controllers: Contains the core logic for voting validation, contestant CRUD, and user management.
- /resources/views: Contains the Laravel Blade templates for the admin dashboard and user portal.
- /database/migrations: Defines the database schemas for users, contestants, and votes.
- /routes/web.php: Application route definitions for both users and administrators.