Skip to main content
All Projects
01Full-Stack Web Development

EduBidan

A role-based Learning Management System for midwifery education with interactive modules, randomized quizzes, and progress tracking.

Live Project
Role
Full-Stack Developer
Context
Bachelor's Thesis Project
Year
2026
edubidan / Primary screen
EduBidan - Landing Page

Overview

EduBidan is a full-stack Learning Management System developed as my bachelor's thesis for midwifery education. It supports distinct Student, Lecturer, and Admin workflows, structured modules with sequential learning access, randomized quizzes, progress tracking, lecturer gradebook, media handling, and notifications.

Project Focus

  • Organize learning content and assessments in a structured module flow.
  • Provide distinct workflows and access for Student, Lecturer, and Admin roles.
  • Apply sequential learning access while tracking student progress.
  • Randomize quiz questions and answer options with Fisher-Yates Shuffle.

Responsibilities

  • Developed the application across frontend and backend.
  • Implemented authentication and role-based access control for Student, Lecturer, and Admin workflows.
  • Built learning modules, sequential content access, quiz flows, and progress tracking.
  • Integrated Cloudinary for media handling and Resend for email delivery.

Technology

Next.jsTypeScriptPrisma ORMMySQLCloudinary

Key Features

EduBidan / Key Features

01

Multi-Role Learning

Student, Lecturer, and Admin roles have distinct access and workflows across the platform.

02

Structured Learning Flow

Modules combine learning materials and quizzes with sequential access and progress tracking.

03

Quiz & Assessment

Questions and answer options are randomized with Fisher-Yates Shuffle, with support for time limits, attempts, and results.

04

Learning Management

Lecturer gradebook, enrollment, user management, and notification flows support the broader LMS experience.

Technical Implementation

01

Full-Stack Application

Next.js and TypeScript provide the main application foundation across interface and server-side flows.

02

Relational Data Layer

Prisma ORM and MySQL model users, roles, modules, learning content, enrollments, progress, quizzes, and related records.

03

Sequential Learning Logic

Learning items are progressively unlocked to support an ordered material and assessment flow.

04

Quiz Randomization

Fisher-Yates Shuffle randomizes both question and answer-option ordering within quiz sessions.

05

Supporting Services

Cloudinary handles media while Resend supports email delivery.

Selected Screens

Selected Screens.

06 selected screens

edubidan / desktop

EduBidan - Landing Page

Landing Page

Public-facing introduction to EduBidan and its digital learning experience.

edubidan / desktop

EduBidan - Student Dashboard

Student Dashboard

Student overview with enrolled modules, learning progress, completed activities, and pending quizzes.

edubidan / desktop

EduBidan - Learning Modules

Learning Modules

Enrolled module library with completion status and supporting learning information.

edubidan / desktop

EduBidan - Quiz Experience

Quiz Experience

Timed assessment flow with question navigation, answer states, and submission controls.

edubidan / desktop

EduBidan - Lecturer Quiz Analytics

Lecturer Quiz Analytics

Lecturer-facing quiz analysis with attempt statistics, score summaries, and answer distribution.

EduBidan - Mobile Learning Experience

Mobile Learning Experience

Responsive module flow showing ordered lessons, quiz locking, and mobile navigation.