Case study
English Global Express — API backend for an online language school
A scalable ASP.NET Core Web API that powers authentication, homework, file uploads and classroom management for a React frontend
- Client
- Global English Express — online language school
- Industry
- EdTech, online education
- Role
- backend development (API)
- Live
- globalenglishexpress.com
The problem
An online English school needed a backend that would handle three distinct roles — administrator, teacher and student — each with their own dashboard, permissions and data access. The school was growing, and the existing setup of spreadsheets and messengers could not scale: homework got lost, file sharing was chaotic, and there was no single place to track student progress.
- teachers needed to assign homework, attach files and review submissions — all in one place;
- students needed a personal space with their schedule, homework history and uploaded materials;
- the admin needed to manage groups, assign teachers and monitor overall activity;
- the frontend team was building in React/Next.js and needed a clean, documented REST API to work against.
The solution
A RESTful API on ASP.NET Core with a clear separation of concerns: Identity handles registration and login, JWT tokens carry role claims, and every endpoint is guarded by policy-based authorization.
- JWT authentication with refresh tokens and role-based access (Admin, Teacher, Student)
- Homework management: create, assign, submit and grade — with file attachments on both sides
- File upload service with size and type validation
- Group and classroom management: timetables, student lists, teacher assignments
- Entity Framework Core with SQL Server, migrations and seed data for quick local setup
Results
- The frontend team received a documented API and integrated it without back-and-forth — contracts were agreed upfront via Swagger.
- Three roles, three dashboards, one API: each user sees only what belongs to them.
- Homework flow — from assignment to submission to grading — replaced a chain of messages and shared drives.
- The architecture is ready for growth: adding new entities (e.g. quizzes, payments) is a controller and a migration, not a rewrite.
Technologies
ASP.NET Core Web API
Entity Framework Core
Microsoft SQL Server
ASP.NET Identity
JWT Bearer Authentication
Swagger / OpenAPI
REST