Back to Projects
English Learning Platform
Featured

English Learning Platform

A C++17 client-server English learning platform with Clean Architecture, featuring real-time chat, voice calls, auto-graded tests, and teacher-reviewed exercises.

February 27, 2026
C++17
TCP/IP Socket
GTK+ 3.0
JSON
Clean Architecture

Overview

A sophisticated English learning platform built from scratch using C++17, implementing a robust client-server architecture with TCP/IP sockets. The platform demonstrates advanced software engineering principles including Clean Architecture, custom networking protocols, and real-time communication.

Key Features

  • Client-Server Architecture — Built with C++17 and TCP/IP sockets, handling 50+ custom message types through a self-designed JSON protocol for efficient client-server communication.
  • Comprehensive Lesson System — Organized lessons filtered by proficiency level and topic, with auto-graded tests providing immediate feedback to learners.
  • Real-Time Communication — Integrated real-time chat functionality and voice call features enabling students to practice English conversation with peers and teachers.
  • Teacher Review System — Structured workflow for teachers to review and provide feedback on student exercises, enhancing the learning experience.
  • Clean Architecture — Follows Clean Architecture principles with clear separation of concerns, making the codebase maintainable and scalable.
  • Modern UI — Built with GTK+ 3.0 for a responsive and user-friendly graphical interface.

Technical Architecture

  • Language: C++17 with modern C++ features and best practices
  • Networking: TCP/IP Socket programming for reliable client-server communication
  • Protocol: Custom JSON-based message protocol with 50+ message types
  • UI Framework: GTK+ 3.0 for native desktop application interface
  • Architecture: Clean Architecture pattern with layered design

Development Period

June 2025 - August 2025

Screenshots

English Learning Platform screenshot 1
English Learning Platform screenshot 2

Tags

C++
Full Stack