
Modernizing Kraken: Migrating an Offline-First Application to NestJS, GraphQL & Angular
At ASN (Alcatel Submarine Networks), operational teams rely on Kraken, a mission-critical web application that must operate seamlessly in both connected and offline network conditions on industrial sites.
The Challenge The legacy Kraken codebase had accumulated substantial technical debt: tightly coupled database queries, poor test coverage, and fragile offline synchronization. The objective: modernize the architecture within a tight schedule while launching the BID platform (offer management).
Technical Strategy 1. Modular Backend with NestJS: Clean separation of concerns using TypeScript and dependency injection, encapsulating business logic into independent domain modules. 2. GraphQL Refactoring: Replaced heavy REST endpoints with targeted GraphQL queries and mutations. This eliminated over-fetching, reduced client payload sizes, and simplified complex data relationships. 3. Robust Offline Synchronization: Redesigned local data persistence with conflict resolution algorithms, allowing workers to record operations offline and sync deterministically upon reconnection. 4. CI/CD Automation via GitHub Actions: Built automated CI/CD pipelines that run linting, unit tests, and integration test suites on every pull request, securing deployments and achieving zero post-release regressions.
Key Outcome The modernized Kraken application provided a dramatic speedup in day-to-day usability, reduced support overhead, and laid a robust foundation for ASN's BID platform.
Related Posts

Event-Driven Microservices with NestJS, Kafka & MongoDB for TGV Maintenance
Architectural insights from leading the SPID Program: NestJS microservices, Kafka event streams, MongoDB change detection <200ms, and Angular 21 with Signals.

Architecting an IPTV Streaming Platform with Angular 13 & NX for 50,000 Daily Users
Building the RMC/BFM IPTV streaming application: Angular 13, NX monorepo, Angular Universal SSR, Akita Store offline persistence, and Didomi GDPR compliance.