Open Day Presentation
BSc Scalable Online Polling/Voting System
Student
Desk
Initial task setting
Supervisor
Second Reader

g20-03

Not public

Keywords
Real-time Communication, Scalability, WebSockets

Technologies
React, Node.js, Socket.io, Firebase, Redis

This project presents an open-source polling platform addressing limitations in existing commercial solutions. Current platforms lock core functionality behind expensive subscriptions, provide no self-hosting options, and offer limited scalability transparency. Educational institutions and organizations requiring data sovereignty cannot deploy these systems locally, forcing cloud provider dependence.

Key features include authenticated and anonymous participation with duplicate vote prevention, poll scheduling, reusable templates, and configurable privacy controls. Poll creators can restrict voting to authenticated users, control results visibility, and manage vote editing. The system maintains low latency, ensuring participants see results update immediately.

The architecture supports horizontal scaling across multiple server instances through message synchronization, enabling vote updates to propagate across distributed backends whilst maintaining data consistency. This work provides an open-source, self-hostable alternative to commercial platforms for education and organizational use.