Skip to content
EOLEsther.

PSEPHOS

PSEPHOS Overview

PSEPHOS helps institutions and organizations manage elections, events, registrations, ticketing and voting through a unified digital system. I worked on it as part of the Zeus Atlas engineering team.

The Problem

Managing elections, events, voter records, registrations and different operational roles gets complicated when information and workflows are spread across disconnected processes.

The Solution

A centralized, role-based platform that brings the different administrative and user workflows together, so each person sees and does only what their role requires.

What I worked on

  • Built React / Next.js interfaces and role-based dashboards
  • Integrated REST APIs and backend services
  • Collaborated on database and application architecture
  • Implemented workflows that span multiple user roles

This was a team effort; the list reflects my part in it.

What makes it hard

  • Many roles, one product

    Super admins, institution admins, commissioners and field officers each need different screens, permissions and actions.

  • Connected data

    Institutions, elections, events, voters and attendees are related records, so the data model and the UI have to agree.

  • Forms with real consequences

    Registration, voting and payment flows need clear validation and predictable error handling (React Hook Form + Zod).

How roles connect in one platform

Institution. The organization that owns elections and events, set up by a Super Admin.

Features

Access

  • Multi-role authentication and access control
  • Super Admin dashboards
  • Institution Admin dashboards
  • Electoral Commissioner workspace

Elections

  • Election and voting management
  • Position and contestant management
  • Voter registration and assignment

Events

  • Event creation and management
  • Digital ticketing and QR-code workflows
  • Field Officer operations

Operations

  • Financial and reporting dashboards
  • Payment integration workflows

The Takeaway

Role-based products are won or lost on clarity. Designing each role's view around its actual tasks, and keeping data relationships explicit, makes the interface easier to reason about.