2024–present

Modernizing a public-service e-loket

Leading the phased migration of a business-critical public-service portal from server-rendered MVC and jQuery to a secure, maintainable Next.js and ASP.NET Core platform.

Vlaamse overheid – Departement Zorg
RoleLead full-stack developer and solution architect
Period2024–present
Technology
  • Next.js 16
  • React 19
  • TypeScript
  • .NET 10
  • ASP.NET Core
  • FastEndpoints
  • YARP
  • MediatR
  • Entity Framework Core
  • Hangfire
  • Azure DevOps

The challenge

The e-loket of the Flemish government’s Department of Care supports organizations and professionals across a broad range of regulated care processes. Over time, its server-rendered MVC and jQuery application had accumulated many thematic journeys, integrations and operational dependencies. Modernization therefore could not be a disruptive rewrite: users, existing URLs, authentication and not-yet-migrated functionality all had to remain available throughout the transition.

David led the technical migration as a full-stack developer and solution architect, turning the existing portal into a platform that could be renewed domain by domain while regular delivery continued.

A new full-stack foundation

The current interface is built with Next.js, React and TypeScript using the App Router. Reusable layouts, typed forms, runtime validation, query caching and centralized client state replace page-specific jQuery behaviour with predictable application patterns. The responsive Dutch-language interface covers public pages, organization data, messages, dossiers, administration and numerous care-specific themes.

An ASP.NET Core API provides versioned endpoints for the new frontend. The solution separates domain, application, infrastructure and presentation concerns, keeping framework code away from business rules and allowing each layer to evolve independently.

Migrating without interrupting service

A dedicated YARP reverse proxy is the key transition layer. Explicit route definitions send migrated journeys to the new frontend and API, while a controlled catch-all keeps remaining pages on the legacy application. Feature flags support gradual activation, and redirects preserve established entry points and deep links.

This strangler-style approach made migration progress measurable and reversible. Individual themes could be moved, validated and released without waiting for the complete legacy surface to be rebuilt.

Maintainable business workflows

Backend use cases are organized as commands and queries with MediatR, FluentValidation and thin FastEndpoints adapters. Entity Framework Core provides access to operational, logging and job data, while global behaviours handle validation and access auditing consistently. Hangfire processes scheduled and asynchronous work such as synchronization, mail and status handling outside interactive requests.

The architecture also accommodates integrations for addresses, document generation, storage and sector-specific services behind focused interfaces.

Security and operational control

The proxy centralizes eHealth SAML authentication, secure cookies, claims mapping and token exchange toward backend services. Role- and policy-based authorization protects administration and dossier workflows. Correlation IDs, structured logging, centralized error handling, security headers and rate limiting make production behaviour traceable and controllable.

Automated unit, integration and architecture tests reinforce the boundaries, while separate Azure DevOps pipelines build and validate the frontend, API and proxy.

Result

Modernisation 1.0 launched in December 2025, with further domains continuing to move onto the new foundation. Departement Zorg gained a modern portal without a high-risk one-time cutover: legacy and new functionality can coexist, teams can migrate focused slices, and the platform can keep adopting current framework versions. The result is a clearer architecture, a richer user experience and a safer path for ongoing public-service development.

Company information

A clear view of the company behind the software.