All case studies
Government · Training

Modernizing vocational training for Nepal's provincial government.

A bilingual training management system for the Province Council for Technical Education and Vocational Training (PCTVET) — covering events, trainees, trainers, contracts, procurements, and skill tests across 8 user roles.

Client
PCTVET
Scope
Full-stack TMS
Status
Live in production
Live at
pctvet.com
The client

A provincial arm of Nepal's national training council.

The Council for Technical Education and Vocational Training (CTEVT) is the apex body for technical and vocational education in Nepal. PCTVET is the provincial-level council operating within that mandate — coordinating training providers, certifying skills, and disbursing public funds.

Their work touches thousands of trainees, hundreds of training providers, and a long tail of trainers, co-trainers, and monitoring officers — historically managed across spreadsheets, paper, and disconnected systems.

The challenge

Eight stakeholder roles. One source of truth.

Training programs in Nepal involve a chain of accountable roles: ministry administrators, council officers, training providers, coordinators, database and monitoring officers, trainers, and co-trainers. Each role sees a different slice of the data — and each needs to act on it without stepping on the others.

Add bilingual requirements (Devanagari for official records, English for inter-agency reporting), contract lifecycle tracking, procurement workflows, and skill-test results that affect public funding — and a spreadsheet-driven workflow simply does not scale.

The solution

A single system across 8 roles.

Role-based access

8 distinct user roles — admin, PCTVET officers, training providers, coordinators, database / monitoring officers, trainers, co-trainers. Each with tailored permissions.

Training events

Full lifecycle: draft → planned → pending approval → approved → ongoing → completed. Multi-step approval workflow built in.

Contracts & procurement

Fixed price, time & materials, cost plus. Contract health monitoring, payment tracking, and procurement notice management.

Skill tests

Scheduled, completed, passed, failed states. Linked to trainees, certifications, and subject levels (1, 2, 3, N/A).

Bilingual EN / नेपाली

Every record carries an English and Nepali version where official records require Devanagari. Built into the schema, not bolted on.

Audit trail

Granular permissions, configurable per role. Every change traceable to a user and timestamp.

Engineering.

Modern, type-safe, deployable to any cloud.

Frontend

  • React + Vite
  • TypeScript
  • Tailwind + shadcn/ui
  • wouter routing

Backend

  • Express + Node 20
  • Drizzle ORM
  • Neon Postgres
  • Passport.js auth

Operations

  • Multi-tenant by role
  • Session-based auth
  • Multer file uploads
  • WebSocket-ready

Need a system like this?

We've built training management systems across multiple iterations. We know the domain.