Skip to content

Latest commit

 

History

History
71 lines (61 loc) · 3.49 KB

File metadata and controls

71 lines (61 loc) · 3.49 KB

LMIS — Labour Market Intelligence System

Project Overview

Gen-AI–enabled National Labour Market Demand & Vacancy Intelligence Platform for Sri Lanka. Built for TVEC (Tertiary and Vocational Education Commission) under the Ministry of Education. This is a donation-based project by Lanka Data Foundation — no commercial compensation.

What This System Does

  1. AI agent periodically collects vacancy signals from job portals, employer sites, recruitment agencies, newspapers, overseas sources
  2. Gen-AI extracts structured fields from unstructured postings and classifies into standard dimensions
  3. De-duplication, PII redaction, confidence scoring, quality checks
  4. Analytics-ready database with dashboards, forecasting, and alerts
  5. Managed via an agent management platform for lifecycle operations

Repository Structure

skillstream/
├── CLAUDE.md              # This file
├── pilot/poc/             # Presentation-ready POC (Next.js)
│   ├── src/app/           # Pages: dashboard, vacancies, skills, regions, forecasting, agents, settings
│   ├── src/components/    # Layout (Sidebar, Header)
│   ├── src/data/dummy.ts  # All dummy data (Sri Lanka-specific)
│   ├── package.json       # Port 3008 for dev/start
│   └── next.config.mjs    # Static export for GitHub Pages
├── .github/workflows/     # GitHub Pages deployment
└── .gitignore             # Python + Node.js patterns

Tech Stack (from proposal)

Layer Tech
Frontend React.js + Next.js, Tailwind CSS, Apache ECharts / Recharts
Backend FastAPI (Python)
Database PostgreSQL + PostGIS + pgvector
AI/LLM LangChain / LlamaIndex
Task Queue Redis + Celery
IAM Keycloak (RBAC, SSO, OIDC/SAML, MFA)
Infra Docker, Docker Compose / Kubernetes, Terraform / Ansible, Nginx
APIs REST + GraphQL (OpenAPI), exports: JSON/CSV/Parquet

Key Requirements (from TOR)

  • Client: TVEC, Sri Lanka
  • Hosting: Lanka Government Cloud (LGC) — all data resides in Sri Lanka
  • Languages: Sinhala, Tamil, English (trilingual UI)
  • Accessibility: WCAG 2.1 AA
  • Security: TLS 1.3, AES-256, OWASP-aligned, SAST/DAST in CI/CD
  • Privacy: PDPA (Personal Data Protection Act No. 9 of 2022) compliance, PII redaction, no jobseeker data
  • Open Source: 100% open-source stack (MIT/Apache 2.0), zero proprietary lock-in
  • IPR: All IP transfers to TVEC upon acceptance
  • Warranty: Minimum 1 year post go-live
  • SLAs: P1: 4hr workaround, P2: 1 business day, P3: 3 business days

Classification Dimensions

Vacancies are classified into: sector/industry, region, occupation group (ISCO-08), skill clusters, contract type, seniority/experience band, salary band, work arrangement

Data Sources

Job portals (topjobs.lk, linkedin, xpress.jobs), employer career pages, recruitment agencies, SLBFE (overseas), newspaper scans, employer portal (direct feed)

Deployment

Branch Strategy

  • main — stable, deploys to GitHub Pages
  • feat-poc-v1 — active development branch

Development Conventions

  • TypeScript strict mode
  • Tailwind CSS for styling (custom design tokens in tailwind.config.ts)
  • Recharts for data visualization
  • All dummy data centralized in src/data/dummy.ts
  • Pages use Next.js App Router (src/app/)