August 10, 2025

rMotion-Front

rMotion-Front banner showcasing industrial robot fleet monitoring dashboard.

rMotion-Front is an enterprise web platform engineered for real-time control, visualization and monitoring of autonomous industrial robot fleets (collector, transporter and maintenance units). Built on Next.js 15 (App Router + Server Components) with a strict Docker-First philosophy, it prioritizes performance, scalability and operational consistency.

πŸš€ Goal

Unify robotic operations across multiple workzones providing:

  • Unified supervision (state, position, activity)
  • Interactive 2D visualization (Konva) of workzones and robots
  • Mission / task system with real-time updates (WebSocket)
  • Executive dashboard with metrics & KPIs

πŸ—οΈ Core Architecture

LayerTechRole
FrameworkNext.js 15 + React 19Hybrid SSR + Server Components
UI StateZustandDecoupled domain stores
Server StateTanStack React QueryDeclarative cache + invalidations
RealtimeWebSocketEvent streaming for robots & tasks
VisualizationReact Konva2D canvas rendering
ChartsApexChartsKPIs & historical series
BuildTurbopackFast iteration + splitting
InfraDocker + MakefileEnvironment parity

πŸ”§ Applied Patterns

  • Feature / Domain Orientation (features/{robots,workzones,tasks})
  • Server vs Client Components to reduce shipped JS
  • Repository pattern in data services
  • Specialized stores (robots, tasks, workzones, auth, theme, websocket)
  • Entity normalization (e.g. robotStore transforms API payloads)

πŸ€– Main Modules

Robots

  • Incremental add/update/remove lifecycle
  • Active color auto-assignment while on mission
  • Enriched state + last update timestamp

Workzones

  • Interactive spatial representation (grid + elements)
  • Zone-specific metric isolation

Tasks / Missions

  • Lifecycle: creation β†’ assignment β†’ execution β†’ completion
  • Push updates via WebSocket

Dashboard

  • Live utilization & productivity KPIs
  • Deferred loading of heavy visual components

⚑ Optimization

  • Planned dynamic imports for Konva / charts
  • Selective subscription in Zustand to minimize re-renders
  • Server Components to shrink hydration footprint
  • Reproducible multi-stage Docker build + standalone output

🐳 Docker-First

All actions (install, dev, build) run inside containers:

make dev
make install
make prod-build

Guarantees dev/prod parity and eliminates local env drift.

πŸ” Quality & Security Considerations

  • Strict typing with TypeScript 5
  • Sensitive env separation via .env.*
  • Central transformation / (future) validation with Zod schemas

πŸ† Technical Highlights

  • Modular, domain-first scalable architecture
  • Optimized base ready for advanced analytics & predictive systems
  • Infrastructure prepared for observability (Sentry / OpenTelemetry)

πŸš€ Next Steps

  • AI-driven route optimization & task assignment
  • Multi-tenant organizational segmentation
  • Real-time flow diagrams & predictive KPIs

Image note: Convert original banner.png to optimized WebP (rmotion.webp) and place it under src/assets/images/projects/ to satisfy portfolio image conventions.

Do you need to create a website? Do you need to analyze or create a business?