Back to portfolio
Apr 2025 - PresentAdvanced

Word Impact Network Backend

The backbone of a learning platform — a typed REST API spanning courses, learners, progress, and assessments.

A production-grade LMS backend with 88+ API endpoints, dual authentication, course management, progress tracking, and assessment workflows.

Codebase is confidential

API endpoints

88+

REST

Auth flows

Dual

learner & admin

Core domains

6

auth → assessment

Data layer

Typed

Prisma + PostgreSQL

Overview

What it is

A production-grade Learning Management System backend that powers the full learning experience: enrolling learners, delivering course content, tracking progress, and running assessments.

The API surface spans 88+ REST endpoints across six core domains, served by Express and fully typed with TypeScript. Prisma sits over PostgreSQL as a typed data layer, with Redis for caching and sessions.

Two distinct authentication flows separate learners from administrators, each with scoped access — so the same platform safely serves students and the team managing content.

API surface

Endpoints by domain

Across 6 core domains

88+ endpoints

Authentication12
Courses & Modules22
Lessons & Media14
Progress Tracking12
Assessments16
Users & Admin12

Architecture

How it fits together

Consumers

Who calls the API

Learner web appAdmin dashboard

API

Express + TypeScript

REST controllersAuth middlewareZod validationRate limiting

Domain

Business logic

CoursesProgressAssessmentsUsers

Data

Persistence & cache

Prisma ORMPostgreSQLRedis

Integrations

Cross-cutting services

JWT authFile uploads (Multer)Email (Nodemailer)Swagger docs

Capabilities

Key features

Dual authentication

Separate learner and admin auth flows, each issuing scoped JWTs for least-privilege access.

Course & module management

Full CRUD over courses, modules, lessons, and media for the content team.

Progress tracking

Per-learner progress recorded across modules and lessons to drive the learning journey.

Assessments & quizzes

Assessment workflows with question banks, submissions, and scoring.

Typed data layer

Prisma over PostgreSQL with migrations keeps the schema and queries type-safe.

Caching & sessions

Redis backs performance-sensitive reads and session state under load.

Documented API

Swagger / OpenAPI describes the full endpoint surface for consumers.

Validation & security

Zod schemas, auth middleware, and rate limiting guard every request.

Toolbox

Tech stack

Runtime

Node.jsExpress.jsTypeScript

Data

Prisma ORMPostgreSQLRedis

Auth & Validation

JWTZod

Tooling

SwaggerMulterNodemailerDocker

Want the deeper walkthrough?

Happy to talk through the architecture and trade-offs in detail.