All work
MHEnterprise SaaS · HREnterprise SaaSCase study

MOPA HRMS — Workforce Performance Platform

Turns a services company’s attendance, projects and completed work into a performance score people can actually see.

A performance operating system for a services company: attendance, employees and departments, shifts and leave, projects and tasks — plus a points engine that turns completed work into a score people can actually see.

Source private
MOPA HRMS — Workforce Performance Platform interface
Industry
Professional Services
Role
Architect & Full-Stack Engineer
Type
SaaS Platform
Year
2026
Status
In progress
Web + Windows agent
Surfaces
Socket.IO
Realtime
Points engine
Scoring

Overview

MOPA HRMS is an HR platform built around a specific idea: attendance and task completion should roll into a visible score rather than sitting in separate reports nobody reads. A points engine converts completed work into a number employees and managers both see, which makes performance a running signal instead of an annual review artifact.

The platform covers attendance, employees and departments, shifts and leave, and projects and tasks. Three surfaces share one NestJS API — a Next.js web app for employees, managers and admins, and a Flutter Windows desktop agent that handles attendance and work-from-home activity tracking through a pure Dart FFI input counter.

Background work runs on BullMQ over Redis, with Socket.IO pushing live updates to the web app.

The problem

A services company had attendance in one system, tasks in another and performance nowhere — reviews were assembled by hand once a year from data nobody had looked at since it was recorded. Work-from-home activity was entirely unmeasured.

The solution

One platform where attendance, shifts, leave, projects and tasks feed a points engine that produces a score visible to the person earning it, backed by a Windows desktop agent that records attendance and WFH activity without manual entry.

Technical stack

Frontend

  • Next.js 15
  • Tailwind CSS 4
  • TanStack Query
  • Flutter

Backend

  • NestJS 11
  • Socket.IO

Data

  • MySQL 8
  • Redis

Also used

  • Prisma 6
  • BullMQ
  • Dart FFI

System architecture

  1. 1

    NestJS 11 API over Prisma 6 and MySQL 8 with JWT authentication

  2. 2

    Redis with BullMQ for background job processing and Socket.IO for realtime push

  3. 3

    Next.js 15 App Router web app with TanStack Query and Radix components

  4. 4

    Flutter Windows desktop agent packaged as MSIX for attendance and activity capture

  5. 5

    A standalone pure-Dart FFI input-counting package with no HRMS concepts, reusable on its own

Engineering challenges

Challenge

Measuring work-from-home activity risks building surveillance rather than a performance signal, and coupling that measurement to HR logic would make it impossible to reason about.

How I solved it

Kept input counting in a standalone Dart FFI package that knows nothing about HRMS — it counts and reports, with all interpretation happening in the platform. The measurement layer stays auditable and independently testable.

Challenge

Performance data that only managers see does not change behaviour.

How I solved it

Built the points engine so the score is visible to the employee earning it in the same app, making performance a continuous visible signal rather than something surfaced once a year.

Core features

  • Attendance with shift and leave management
  • Employee and department directory
  • Projects and task tracking
  • Points engine converting completed work into a visible score
  • Windows desktop agent for attendance and WFH activity
  • Pure Dart FFI input counting, packaged as MSIX
  • Realtime updates over Socket.IO
  • Background jobs on BullMQ and Redis
  • Role separation for employees, managers and admins
  • JWT authentication

Results & impact

Attendance, task completion and work activity converge into one visible score, replacing a once-a-year manual assembly of data with a running performance signal that employees and managers read from the same place.

Screenshots

MOPA HRMS — Workforce Performance Platform screenshot 1

What I learned

  • Isolating a measurement primitive from the domain that interprets it keeps sensitive telemetry auditable — and makes it reusable.
  • A performance metric changes behaviour only when the person being measured can see it.

Related work

All projects
Next step

Have a system like this to build?

I take projects from the first conversation through to production, and stay on for the support that follows.