Internship project at MIC Consulting Group

Khotwa

Online learning platform bringing together courses, learning paths, assessments, virtual classrooms, and learner progress tracking.

Role

Full-stack design and development during an internship at MIC Consulting Group.

  • Java
  • Spring Boot
  • Spring Security
  • JPA
  • MySQL
  • Next.js
  • React
  • TypeScript
  • Flutter
  • Docker
  • Jitsi Meet
  • Ollama
  • MinIO
Khotwa cover screenshot

Context

Project overview

Developed at MIC Consulting Group, Khotwa centralizes training activities and supports learners throughout their learning journey.

Problem

Learners and trainers need a shared space to organize courses, track progress, and manage remote assessments.

Objectives

  • Learning paths with modules, chapters, PDF and video resources, quizzes, and progress tracking.
  • Dedicated learner, trainer, and administrator areas, virtual classes, and notifications.
  • Mobile app with offline access and an Ollama-based learning guidance assistant.

Solution

What was built

Khotwa brings together Learner, Trainer, and Administrator areas, structured courses, quizzes, virtual classrooms, notifications, certificates, and a mobile app with offline access.

Why this approach

The platform combines a course catalog, structured lessons, resources, quizzes, progress tracking, virtual classrooms, notifications, and certificates.

Architecture

A structured view of the technical blocks and responsibilities planned in the project.

Frontend

Frontend

Next.js and React web app with a Flutter mobile app.

Backend

Backend

Java API built with Spring Boot, Spring Security, and Spring Data JPA.

Database

Database

MySQL for platform data and MinIO for resource storage.

Authentication

Authentication

Spring Security access control for Learner, Trainer, and Administrator roles.

Integrations

Integrations

Jitsi Meet for virtual classrooms, Ollama for learning guidance, and Docker for services.

Technical challenges

  • Structuring roles and learning journeys in one coherent platform.
  • Securing accounts and learning resources.
  • Connecting web and mobile applications with backend services.

Engineering decisions

Learning paths with modules, chapters, PDF and video resources, quizzes, and progress tracking.

Dedicated learner, trainer, and administrator areas, virtual classes, and notifications.

Mobile app with offline access and an Ollama-based learning guidance assistant.

Quality & testing

Quality is presented as a progressive engineering approach: targeted tests, readability, static analysis, and documented decisions.

Testing approach

The project combines a Spring Boot backend, a Next.js/React web app, a Flutter mobile app, and supporting services.

Maintainability and analysis

  • Readable architecture and separated responsibilities

Results

  • Web and mobile e-learning platform documented in the internship report.
  • The project covers courses, assessments, virtual classrooms, and administration.

Lessons learned

These takeaways turn the project into evidence of technical reasoning, not just a feature list.

  • Turn "Learners and trainers need a shared space to organize courses, track progress, and manage remote assessments." into explicit technical decisions.
  • Present trade-offs clearly so an engineering team can review the reasoning.
  • Connect architecture, testing, and maintainability to a concrete problem.