Cross-platform mobile client
Native-compiled Flutter and Dart mobile application delivering 60fps lesson flows and offline-resilient progress capture on iOS and Android.
An end-to-end, cross-platform product — Flutter, React, TypeScript & REST, built to run on any HTML5-supported screen.
Delivered end-to-endCross-platformReal-time sync
Synced via REST · <30ms
Flutter ↔ REST ↔ React
Security Sentinel
Synced live
01 · Product Overview
One shared product experience across native mobile and modern web — keeping corporate learners synchronized on every screen.
I architected and shipped a cross-platform corporate e-learning system built for Learning & Development teams rolling out high-engagement training across distributed organizations. Rather than siloing employees inside static desktop portals, I delivered a Flutter/Dart mobile client and a React/TypeScript web application backed by shared REST services—so every question answered, poll voted on, point earned, and badge unlocked synchronizes in real time across any HTML5-supported screen.
Native-compiled Flutter and Dart mobile application delivering 60fps lesson flows and offline-resilient progress capture on iOS and Android.
Strictly typed React and TypeScript web client engineered to run reliably across any modern HTML5-supported browser and workstation.
Composable interaction primitives—knowledge checks, live cohort polls, and spatial hotspot exercises—embedded directly inside lesson sequences.
Deterministic state synchronization keeping learner points, completion streaks, and earned badges identical across phones, tablets, and desktops.
Unified REST service contracts connecting Flutter and React clients to modular content delivery, JWT authentication, and L&D reporting.
In-app corporate announcements paired with structured frontend usage events that stream directly into backend reporting pipelines.
Want to inspect the shared widget contracts, state synchronization ledger, and REST repositories?
02 · Interactive Learner Experience
Step through a real corporate training sequence featuring a multiple-choice check, a live cohort poll, and a click hotspot audit. Toggle Preview on Mobile to interact with both clients side-by-side and watch points and badges stay synchronized in real time.
Experience the three core interaction layers delivered across our Flutter and React clients: a verified knowledge check, a live cohort poll, and a spatial hotspot inspection.
The interaction model the platform ships — questions, polls, and clicks, synced across screens.
03 · System Architecture & Stack
Flutter and React consume identical REST schemas for content manifests, JWT authentication, and progress synchronization—so user data flows seamlessly across every device and backend reporting service.
Client Runtimes (Shared Design Language)
Integration & Sync Layer
Backend Services
Modular, reusable widget and component architecture shared across platforms — one design language, two runtimes.
04 · Cross-Platform, Responsive UX
Corporate training happens on commuter trains, conference-room tablets, and dual-monitor engineering desks. I designed shared spacing tokens, fluid container grids, and unified pointer/touch targets so every lesson scales gracefully without losing context or visual polish.
Single-column card stack with sticky bottom action bar, 48px minimum touch targets, and condensed gamification pill in the top header.
API Security & Session Hygiene
Primary L&D training workflow across devices:
One vision — run on any HTML5-supported screen.
05 · Notifications, Analytics & Communication
Every frontend interaction across Flutter and React—from lesson_started to poll_voted and badge_earned—streams into backend reporting services that power L&D dashboards and trigger targeted in-app notifications.
Corporate announcements & synced alerts
Announcements deliver identically to the Flutter notification tray and React web inbox via REST feed polling and push fan-out.
7-day rolling ingestion across Flutter mobile & HTML5 web
lesson_startedpoll_votedbadge_earned06 · Engineering Practices — Quality & Process
Keeping a Flutter mobile app, a React web client, and shared REST services aligned over successive releases required strict contract hygiene, containerized environments, and automated quality gates.
Short-lived feature branches, scoped merge requests, mandatory peer reviews, and protected release tags keeping mobile and web releases synchronized.
Automated unit, Flutter widget, and React component suites paired with REST contract verification to catch regressions before merge.
Versioned OpenAPI specifications, architecture decision records, and cross-runtime component guides keeping frontend and backend contracts aligned.
Two-week sprint cadence with structured backlog refinement, stakeholder reviews with L&D leads, and continuous retrospective improvements.
Containerized web, API, and test-runner environments eliminating machine-to-machine drift across local workstations and GitLab CI pipelines.
Strict Dart and TypeScript compiler checks, decoupled domain state modules, and enforced lint rules engineered for long-term team velocity.
07 · Structural Outcomes & Scope
Measured by production scope: unified cross-platform parity, reusable interactive lesson primitives, and a single shared REST backbone serving corporate learners in real time.
Phones (375px), tablets (768px), and desktops (1440px+) unified under the run-on-any-HTML5-screen vision.
Learner progress, points, and badges synchronized across Flutter mobile, React web, and REST services.
Reusable multiple-choice questions, live cohort polls, and spatial hotspot interactions shipped across runtimes.
Content management, authentication, notifications, and usage analytics connected through one shared API contract.