PTS – Performance Tracking & Project Management System
Overview
The Performance Tracking & Project Management System (PTS) is a full-stack, enterprise-ready web application designed for university societies, clubs, and organizations. It replaces manual spreadsheets and paper records by streamlining project management, committee coordination, member performance evaluation, event scheduling, and feedback tracking across four organizational roles.
User Roles & Access Hierarchy
The system defines four distinct user roles with strict role-based access control (RBAC):
- ADMIN: Overall system administration, user invitations, role assignments, society-wide event management, high-level project creation, and feedback/complaint oversight.
- CHAIRPERSON: Project owner/leader. Manages project scope, creates project committees, appoints committee heads, assigns tasks with priorities and due dates, and tracks progress.
- COMMITTEE HEAD: Leads specific functional committees (Logistics, IT, Marketing, Operations) under a project and manages committee-level member task assignments.
- MEMBER: Society member. Views assigned tasks, updates progress (
TODO→IN_PROGRESS→COMPLETED), submits feedback or complaints, and accesses the shared society calendar.
Technologies Used
System Architecture
The application adopts a modular decoupled architecture connecting a React 19 single-page application with a RESTful Express.js 5 backend powered by MongoDB Atlas.
PTS Decoupled System Architecture
Core Functional Modules
1. Authentication & Onboarding
- Flexible Credentials: Login support using either Email or University Index Number.
- Secure Invitation Flow: Admins generate account invitations. An invitation token (SHA-256 hashed in database) allows new members to provision their credentials securely upon first sign-in via
/set-password. - Password Governance: In-app password updates and self-service setting management.
2. Project & Task Hub (/api/pm)
- Project Lifecycle: Dynamic transition management across
UPCOMING,ACTIVE, andCOMPLETEDproject states. - Task Scheduling & Priorities: Tasks carry priorities (
LOW,MEDIUM,HIGH) and completion statuses (TODO,IN_PROGRESS,COMPLETED). - Derived Overdue Status: Overdue state (
isOverdue) is calculated dynamically on query based ondueDateand completion status without needing background cron jobs.
3. Committee Management (/api/committee)
- Create functional committees within projects (e.g., Logistics, IT, Marketing, Operations).
- Appoint Committee Leads (
leadId) and assign member rosters with individual responsibilities.
4. Shared Society Event & Calendar System (/api/event)
- Manages society events categorized as
EVENT,SPECIAL_TASK,MEETING, orDEADLINE. - Rendered visually on the interactive
react-calendarcomponent on both Admin and Member dashboards.
5. Multilingual Support (i18n)
- Complete interface translation into English, Sinhala, and Tamil powered by
i18nextandreact-i18next.
6. Smart In-App Notification Engine (/api/notifications)
- Dispatch alerts for events like
TASK_ASSIGNED,TASK_COMPLETED,PROJECT_MEMBER_ADDED, andCOMMITTEE_MEMBER_ADDED. - Dynamic deadline reminders (“due soon” or “overdue”) with dismissal persistence (
DismissedDeadline) to prevent notification fatigue.
Single-Connection Handle Caching
Optimized MongoDB connection handling using Mongoose handle caching (useDb("MPTS", { useCache: true })) to ensure fast response times across high-concurrency request spikes.
Results & Impact
Replaced manual spreadsheets and paper records with a unified, role-based platform that automated task tracking, deadline alerts, and multilingual coordination across university society members.
Key Takeaways & Learnings
- Designing a 4-tier role-based access control system requires clean permission middleware boundaries.
- Calculating dynamic status attributes (
isOverdue) at read-time reduces cron background overhead. - Integrating
i18nextearly simplifies multi-language rendering across complex dashboard views.
Interested in building a system like this?
I am available for full-stack engineering roles, systems consulting, and IoT hardware collaborations.