← Back to projects

Project case study

Modular .NET Game Services Platform

Personal multi-API .NET platform with admin UI

.NETASP.NET CoreEF CoreReactTypeScriptDocker
Summary

Quick overview

Personal modular .NET web platform with separate admin, runtime, and web-facing APIs, EF Core persistence, and a Vite React/TypeScript admin frontend.

Personal project. Source code or private walkthrough available on request.

Architecture

Admin and runtime separation

Admin UI

React / TypeScript dashboard

Admin API

Auth, users, roles, game config

Runtime API

API-key protected runtime endpoints

Persistence

EF Core, migrations, SQL-backed data

Problem

What needed to be solved

A personal mono-repo project for managing game-related services, administration workflows, runtime APIs, persistence, and a frontend admin interface.
Implementation

What I worked on

Designed and implemented the platform structure across API projects, application services, domain/core layers, EF Core persistence, configuration, local development setup, and admin frontend integration.
Technical decisions

Responsibilities, systems, and engineering trade-offs

  • Separate Admin API, Runtime API, and Web API projects
  • Application, Core, Persistence, and Shared layers for clearer ownership boundaries
  • Tenant-aware data separation using tenant identifiers and protected admin operations
  • JWT authentication with refresh token rotation for admin access
  • Authentication, users, roles, and admin access management
  • API key management for runtime-facing integrations
  • Game configuration workflows and admin dashboard functionality
  • EF Core DbContext, database migrations, and SQL-backed persistence
  • API key protected runtime endpoints and admin-oriented backend functionality
  • Vite React/TypeScript admin UI connected to backend APIs
  • Docker Compose-based local dependencies such as database and object storage
Result

Result and value

Demonstrates end-to-end .NET platform design, modular backend structure, persistence setup, local infrastructure thinking, and admin UI integration outside client work.
What I learned

Practical takeaway

Separating admin, runtime, persistence, and application layers makes a platform easier to extend without mixing concerns.
© 2026 Sebastian Luchian