Neljohn Cerera
Client projectNestJSNext.jsMySQLREST API

Election Management Platform

  • Client project
  • Full-stack
  • On-premise
  • Solo built

A full-stack, on-premise platform for administering delegate-based elections from setup through voting to finalized, anonymized results. Designed and built solo on a three-tier, domain-driven architecture.

Solo builtOn-premise · Docker3-tier architecture
Under NDA

Client project — implementation details confidential

Internal workflows, data models, and system-specific flows are omitted out of respect for client confidentiality. Happy to walk through the architecture and approach on a call.

What I built

The capabilities behind the platform

  • Three-tier architecture

    Web clients, API, and database — clean, domain-driven backend with business rules isolated from the framework layer.

  • Role-based access control

    Fine-grained, per-user permission model — multiple roles per user with individual grant/deny overrides independent of role.

  • Secure voting workflow

    Transactional integrity enforced at every stage — votes are either fully recorded or fully rolled back. Full audit logging throughout.

  • Reporting & analytics

    Live election monitoring dashboard, exportable reports, and printable views — all generated from the same data layer.

  • Offline-first deployment

    Dockerized for on-premise, air-gapped environments — timezone-aware throughout the stack, with health checks and structured logging.

Skills demonstrated

What this build exercised end to end

  • Full-stack development (NestJS + Next.js + TypeScript)
  • Relational DB design & ORM (PostgreSQL + TypeORM)
  • Clean / layered architecture & domain-driven design
  • Authentication, authorization & RBAC
  • Transactional integrity & audit logging
  • Containerized, offline-capable deployment (Docker)

Tech stack

Each tool and the job it does here

Backend API

NestJS

Frontend

Next.js · React

Full stack

TypeScript

Database

PostgreSQL · TypeORM

Deployment

Docker

CI/CD & deployment

Release-driven · Registry-based · On-premise

  1. 01

    Tag a GitHub Release

    Triggers the pipeline automatically

  2. 02

    GitHub Actions

    Build web + server Docker images via multi-stage builds → slim, runtime-only images

  3. 03

    Push to Docker Hub

    Versioned, immutable image tags → reproducible deploys and easy rollback

  4. 04

    On-prem server

    docker compose pull → up -d, behind Nginx

Let's work together

Have a product to build?

I'm available for full-time roles and select contract work. Tell me what you're building and I'll get back within a day.

Back to all projects