
Online Voting System Using Python
Online Voting System
Overview
This Online Voting System is designed to make voting easier and fully digital for schools, colleges, or organizations. It’s built using Python and Tkinter, with Excel used as the database to keep things simple and accessible.The system comes with a clean and easy interface for both voters and administrators. It supports role-based access and even provides live result tracking. It’s a practical and lightweight solution that can be used in real scenarios.
Project Details
Project Name | Online Voting System |
---|---|
Language/s Used | Python |
Python Version | 3.x |
Database | Excel (via openpyxl ) |
Type | Desktop GUI Application |
Download New Real Time Projects :-Click here
Key Features
Admin Dashboard
- Candidate Management
- Add candidates with photos and election symbols
- Edit and delete candidate entries
- View all candidates with details
- Voter Management
- View registered voter list
- Delete voters
- Check who has voted
- Session Management
- Start or end voting sessions
- Monitor current session status
- Results
- Live vote counting
- Export results to Excel
- View individual candidate vote counts
Voter Panel
- Voting
- Secure login using credentials
- Cast vote once with photo-based interface
- Check own voting status
- View election results (if enabled)
Login Credentials
Admin Login
- Password:
admin123
- Access:
- Full dashboard privileges
- Manage candidates, voters, sessions, and results
Voter Logins
Voter Name | Voter ID | Password | Status |
---|---|---|---|
voter1 | 1111 | 1111 | Can vote |
voter2 | 2222 | 2222 | Can vote |
voter3 | 3333 | 3333 | Has voted |
System Architecture
File-Based Database Structure
File | Purpose | Description |
---|---|---|
candidates.xlsx |
Candidate Data | Stores candidate details & photos |
voters.xlsx |
Voter Records | Voter credentials & vote status |
votes.xlsx |
Vote Logs | Vote count and timestamps |
registration.xlsx |
Voter Registration | Registration information |
session.xlsx |
Session Management | Voting session status |
Technology Stack
- Programming Language: Python 3.x
- GUI Library: Tkinter
- Data Handling: Excel files (
openpyxl
) - Image Support: Pillow (PIL)
- Security:
bcrypt
for password hashing
Installation Guide
Prerequisites
- Python 3.x installed
pip
package manager
Steps
- Install required libraries:
pip install -r requirements.txt
- Launch the application:
python main.py
Data Management
Candidate Data Schema
Field | Type | Description |
---|---|---|
id | Integer | Unique Candidate ID |
name | String | Candidate Name |
post | String | Post or Position |
photo_path | String | Path to Photo |
symbol_path | String | Path to Symbol |
votes | Integer | Vote Count |
Voter Data Schema
Field | Type | Description |
---|---|---|
voter_id | String | Unique Voter ID |
password | Encrypted | Password (Hashed) |
has_voted | Boolean | Voting Status |
Security Features
Implemented
- Password encryption using
bcrypt
- Voter authentication with credentials
- Admin-only dashboard access
- One-time vote enforcement
- File-based secure session control
Recommended Upgrades
- Encrypt Excel database files
- Add 2FA (Two-Factor Authentication)
- Include audit logs and backups
- Implement role-based access control
We have projects Available in all languages:–Click Here
online voting system using python pdf
online voting system project with source code
online voting system project with source code pdf
online voting system using python in ppt presentation
online voting system project in python with source code github
online voting system project in python report
online voting system project source code in html
simple voting system in python
Post Comment