All Projects
Education2025

Programming Fighter.

A full-featured LMS for live, project-based learning.

Role
Full-Stack Engineer
Client
Programming Fighter
Year
2025
Duration
5 months
Tech Stack
Next.jsExpress.jsMongoDB
Programming Fighter screenshot
01Overview

The project
& the challenge.

The Project

Programming Fighter is a Learning Management System where instructors run live cohorts, ship assignments, and sell paid courses — with a secure video player that resists unauthorized redistribution.

The Challenge

The team wanted to move beyond third-party platforms (which charged per-student fees and offered limited control) to a self-hosted LMS. The hardest constraint was preventing course videos from being downloaded and re-uploaded elsewhere — a major leak channel for paid education content.

02Approach

How I built it.

Step-by-step decisions and trade-offs that shaped the final shipped product.

  1. 01

    Designed a custom video playback system with signed, short-lived URLs, watermarking, and DRM-style anti-distribution controls baked in.

  2. 02

    Built the live-class layer on top of a streaming SDK with per-cohort access control and seamless replay generation.

  3. 03

    Implemented an assignment workflow where students submit, instructors review, and feedback threads stay scoped per submission.

  4. 04

    Integrated SSLCommerz for local payment methods (mobile banking, cards) so paying for courses worked smoothly inside Bangladesh.

  5. 05

    Modeled the data in MongoDB with denormalized read paths for course pages and normalized writes for enrollment / progress tracking.

03Features

What it does.

6 core capabilities
01

Live class streaming

Real-time classes with chat, screen-share, and instant replay archiving.

02

Anti-piracy video player

Signed URLs, watermarks, and tampering protection on every stream.

03

Assignment workflows

Submit-review-feedback loop with per-thread scoping.

04

SSLCommerz payments

Native support for Bangladeshi cards and mobile-banking checkouts.

05

Cohort management

Group students into batches with per-cohort scheduling and content drip.

06

Progress tracking

Per-student dashboards showing completion, scores, and time spent.

04Tech Stack

The tools I used.

01Frontend
Next.jsTypeScriptTailwind CSSRedux Toolkit
02Backend
Express.jsNode.jsMongoDBMongoose
03Infra
AWS S3SSLCommerzCDNJWT Auth
05Results

The outcome.

Secure
Video Playback
Live
Class Streaming
Payments
SSLCommerz
Scalable
Cohort Workflows