Voting System Project Python

In this article I have explain how implement online voting system project python. Actually nowadays we are voting manually in particular election booth center. But in future may be everything will be changed. Because we are living on digital world & everyone migrate into new technologies.

So there is chance for online voting system on upcoming days. Therefore most of college students & developers interest to developing on those concept.

Similarly it’s like current voting procedure. The major difference is we use computer touch screen instead of voting machine. When this project on live in all elections, we control the fake votes via IP addresses. On the other hand suddenly able to getting the results like who win the election.

How it’s working

Totally here we need to develop Three modules. They are,

  1. Admin Login
    • Running Server
    • Show the Voting Results
  2. Create Account for Voter
  3. Voter Login
    • Cast Vote

Firstly the voter must register a account for caste vote. Then only they are permit to enter a vote. After registration completed, admin provide unique voter id for all citizens.

Now admin need to running the server for start a elections. After that voters to starts to cast the vote. If raising any server problems, that also fixed automatically via the child server.

Finally Admin view the voting result & announce winners list.

Voting System Project Objective

The project objective is everyone cast their votes without any interruption. Another major advantage is time savings, cost, able to vote on anywhere. No need to comes on particular booth centers. Through this we increase the voting counts.

Because most of peoples not able to comes on native place & some other reasons. So when execute this plans, they are directly enters their vote on own place.

Screenshots

Let’s see the screenshot files, then decide it’s worth or not. If it’s okay, move to next section for download the full source code in free of cost. Here I have using Tkinter for develop this project, otherwise you can also use Django or Flask framework.

For more output file, just download the code.

Voters List

When the voters push the screens, data will be automatically stored on database. The main purpose for backup entire data, because there is a chance for server crash. Moreover we ready & accept the risks to take over a online programming system.

voter list
import subprocess as sb_p
import tkinter as tk
from tkinter import *
from Admin import AdmLogin
import registerVoter as regV
from voter import voterLogin


def Home(root, frame1, frame2):

    for frame in root.winfo_children():
        for widget in frame.winfo_children():
            widget.destroy()

    Button(frame2, text="Home", command = lambda: Home(root, frame1, frame2)).grid(row=0,column=0)
    Label(frame2, text="                                                                         ").grid(row = 0,column = 1)
    Label(frame2, text="                                                                         ").grid(row = 0,column = 2)
    Label(frame2, text="         ").grid(row = 1,column = 1)
    frame2.pack(side=TOP)

    root.title("Home")

    Label(frame1, text="Home", font=('Helvetica', 25, 'bold')).grid(row = 0, column = 1, rowspan=1)
    Label(frame1, text="").grid(row = 1,column = 0)
    #Admin Login
    admin = Button(frame1, text="Admin Login", width=15, command = lambda: AdmLogin(root, frame1))

    #Voter Login
    voter = Button(frame1, text="Voter Login", width=15, command = lambda: voterLogin(root, frame1))

    #New Tab
    newTab = Button(frame1, text="New Window", width=15, command = lambda: sb_p.call('start python homePage.py', shell=True))

    registerVoter = Button(frame1, text="Register Voter", width=15, command = lambda: regV.Register(root, frame1))

    Label(frame1, text="").grid(row = 2,column = 0)
    Label(frame1, text="").grid(row = 4,column = 0)
    Label(frame1, text="").grid(row = 6,column = 0)
    Label(frame1, text="").grid(row = 8,column = 0)
    admin.grid(row = 3, column = 1, columnspan = 2)
    voter.grid(row = 7, column = 1, columnspan = 2)
    newTab.grid(row = 9, column = 1, columnspan = 2)
    registerVoter.grid(row = 5, column = 1, columnspan = 2)
    frame1.pack()
    root.mainloop()


def new_home():
    root = Tk()
    root.geometry('500x500')
    frame1 = Frame(root)
    frame2 = Frame(root)
    Home(root, frame1, frame2)


if __name__ == "__main__":
    new_home()import subprocess as sb_p
import tkinter as tk
from tkinter import *
from Admin import AdmLogin
import registerVoter as regV
from voter import voterLogin


def Home(root, frame1, frame2):

    for frame in root.winfo_children():
        for widget in frame.winfo_children():
            widget.destroy()

    Button(frame2, text="Home", command = lambda: Home(root, frame1, frame2)).grid(row=0,column=0)
    Label(frame2, text="                                                                         ").grid(row = 0,column = 1)
    Label(frame2, text="                                                                         ").grid(row = 0,column = 2)
    Label(frame2, text="         ").grid(row = 1,column = 1)
    frame2.pack(side=TOP)

    root.title("Home")

    Label(frame1, text="Home", font=('Helvetica', 25, 'bold')).grid(row = 0, column = 1, rowspan=1)
    Label(frame1, text="").grid(row = 1,column = 0)
    #Admin Login
    admin = Button(frame1, text="Admin Login", width=15, command = lambda: AdmLogin(root, frame1))

    #Voter Login
    voter = Button(frame1, text="Voter Login", width=15, command = lambda: voterLogin(root, frame1))

    #New Tab
    newTab = Button(frame1, text="New Window", width=15, command = lambda: sb_p.call('start python homePage.py', shell=True))

    registerVoter = Button(frame1, text="Register Voter", width=15, command = lambda: regV.Register(root, frame1))

    Label(frame1, text="").grid(row = 2,column = 0)
    Label(frame1, text="").grid(row = 4,column = 0)
    Label(frame1, text="").grid(row = 6,column = 0)
    Label(frame1, text="").grid(row = 8,column = 0)
    admin.grid(row = 3, column = 1, columnspan = 2)
    voter.grid(row = 7, column = 1, columnspan = 2)
    newTab.grid(row = 9, column = 1, columnspan = 2)
    registerVoter.grid(row = 5, column = 1, columnspan = 2)
    frame1.pack()
    root.mainloop()


def new_home():
    root = Tk()
    root.geometry('500x500')
    frame1 = Frame(root)
    frame2 = Frame(root)
    Home(root, frame1, frame2)


if __name__ == "__main__":
    new_home()

Winners counting list

Finally check the results for individual parties. Re-election or voting features currently we not provide, may be in in the future update those things.

voting system project python result

Download Source Code

Above all images & code helps to build the projects. So click below button to get the full source code of voting system project python. Suppose if you are facing any issues ? Contact me I will try to clear your problems within a days. Maximum you won’t face, because code was running fine.

Leave a Reply