Pemilos Application

A digital voting system for school and campus elections, featuring a Filament-powered admin dashboard, Vue-based voting interface, CSV import/export, unique voter codes, and real-time results.

Laravel
Filament
Vue 3
Tailwind CSS
MySQL
Pemilos Application preview

Pemilos Application

The Pemilos Application was built to digitalize the election process for schools and universities.
It offers an admin dashboard with Filament for managing candidates and voters, and a Vue-based interface for the voting process. The system ensures fairness, security, and ease of use, making it ideal for student organizations running democratic elections.

Key Features

  • Custom voting rules: set minimum and maximum candidate selections
  • Import candidates from CSV and export candidate lists
  • Import voters in bulk via CSV
  • Unique voter code generation for secure authentication
  • Live dashboard showing election progress and results in real time
  • User-friendly voting UI built with Vue and Tailwind

Development Process

The admin side was developed using Laravel + Filament, which provided a clean and extendable CRUD system for managing candidates and voters.
For the voting interface, I used Vue 3 with a lightweight design for mobile-first usability.
Authentication for voters was handled using unique codes that were generated automatically, ensuring each voter could only vote once.

The biggest challenge was building a real-time result dashboard, which I solved using event broadcasting and efficient MySQL queries to avoid performance issues during peak voting times.

Voting Dashboard

Technical Challenges

  • Bulk Data Management: CSV import/export for thousands of candidates and voters without breaking the system.
  • Vote Validation: Enforcing custom voting rules (e.g., min 1 and max 3 candidates) consistently across backend and frontend.
  • Security: Preventing duplicate or fraudulent votes using one-time unique voter codes.
  • Realtime Updates: Displaying live results and participation rates with minimal server load.
  • UX Simplicity: Ensuring voters (students/teachers) could easily use the system with no prior training.

Project Details

Year

2024

Duration

1.5 months

Role

Full-stack Developer

Client

Student Council Election

Project Gallery

Pemilos Application screenshot 2
Pemilos Application screenshot 3
Pemilos Application screenshot 4
Pemilos Application screenshot 5
Pemilos Application screenshot 6
Pemilos Application screenshot 7
Pemilos Application screenshot 8