Portfolio
MyKPI: One KPI System for Every Screen, With a Built-in AI Assistant
24 September 2026 · 1 min read · Desmond Yap Jia Chun
MyKPI is a staff KPI and performance appraisal system. It works out each person's KPI score from two things: the work they deliver (tasks in projects carry points) and how they are appraised (a self-assessment plus the reviewer's marks).
Key features
- Human Resource: manage teams, positions and members, and open each member's KPI breakdown.
- KPI Setting per position: choose the project vs. objective weighting (for example 70 / 30), a project points target, and a tree of objectives with scored items.
- Projects & Tasks: assignees, priorities, subtasks, milestones and a To Do → In Progress → Review → Done flow. Only the admin tags tasks with points, so nobody can set their own score.
- Appraisals: members fill in a self-assessment, reviewers add marks, and review schedules send reminders before a review is due. Performance bands turn scores into ratings such as Excellent.
- KPI Report: summary cards, a monthly performance trend, team comparison, member ranking and project reports, with CSV export and print.
Reports on the desktop, reviews on the tablet, answers on your phone
The whole system is responsive. On a phone, a menu bar sits at the bottom of the screen, so the main pages stay one tap away. Report queries use composite database indexes, so they stay fast as the data grows.
Just ask your KPI assistant
Reports are useful, but sometimes you just want to ask a question. A chat bubble on every page lets you type a question in plain English and get an answer taken from the live data, for example:
- "Who has the highest KPI score this month?"
- "What is my score this year?"
- "Who is due for review?"
- "How do I set up KPI for a position?"
Tech stack
Laravel 13 · PHP 8.3 · MySQL 8 · Blade, Bootstrap 5 and jQuery · DataTables · ApexCharts · Select2 · laravel/ai with Ollama.