GIAP Development Gateway

Unified operational gateway combining service launch, status, architecture, and docs in one page.

Default root URL now points to the company landing page at /. Use this page at /gateway.html for engineering and platform operations.

AMD v1.0 aligned Node-RED + Docker Motor Controller Integrated

Application Gateway

Open applications and API surfaces from one place.

Node-RED Flow Editor

Service: edge-flow | Port: 1880
Purpose
Build and deploy automation, inspection, and integration flows with the low-code Node-RED editor.

Node-RED Dashboard

Service: edge-flow dashboard UI
Purpose
Operator-facing dashboard surface for Node-RED widgets, quick controls, and runtime telemetry.

Engine Runtime

Service: engine-runtime | HTTP 59060 / gRPC 59061
Purpose
Deterministic .NET processing runtime that executes workflow logic, orchestration, and heavy compute services behind the web UI.

Core API

Service: cloudapi | Host Port: 8088 | Public route: /core-api
Core API is the primary platform management surface for catalog sync, resource access, and app integration. Keycloak-IAM provides authentication; CloudAPI is the management API that downstream services consume.

Keycloak-IAM

Identity profile | Port: 18080
Purpose
Central identity provider for realm administration, OIDC login, token issuance, and role management across platform apps.

Administrative credentials are environment-specific and are intentionally not displayed on this public page.

Platform Management Client

Primary route: /iam-client | Keycloak-IAM + Core API
Purpose
Primary browser client for Keycloak-backed sign-in, CloudAPI resource summary, catalog sync, and platform administration tasks.

RMT Venture Site

Served by edge-web | Route: /
Purpose
Public-facing business site and lead capture experience hosted by the same edge-web gateway.

Motor Controller

Service: motorcontroller (container: motorcontroller-1) | Internal Port: 3000 | Route: /motorcontroller/ via 8089
Purpose
Device operations console for controller provisioning, motion/admin actions, and plant-side equipment access.

Database: PostgreSQL schema motorcontroller
Auth: Keycloak-IAM realm giap with JWKS verification
Firmware interface: /motorcontroller/api/device/:deviceUid/*

Project Overview

Mission and Purpose

GIAP is migrating from a WPF-centric desktop model to a Docker-native, Node-RED-centric web platform while preserving deterministic .NET runtime behavior.

Porting Status

P1 Runtime monitor + flow editor: Web-first
P2 Dashboarding + sample manager: In progress
P3 Config and calibration UX: Roadmap

Security and Access

Primary gateway: edge-web (Node.js)
Identity roadmap: Keycloak-IAM (OIDC) + Core API as primary management plane
Principle: runtime does not care about UI, UI does not host runtime

Service Progress Matrix

Completed and pending work by service, with quick document links.

Service Completed Pending Key Docs
edge-web gateway
  • Unified previously split gateway pages into one page
  • Proxy routes for Cloud API, Node-RED, runtime, IAM, and motorcontroller
  • Global navigation across platform surfaces
  • Role-aware menu visibility by IAM role
  • Live container telemetry overlay
motorcontroller web app
  • Containerized Node.js app integrated into compose
  • Shared PostgreSQL schema and Keycloak-IAM integration
  • Device poll/config/status API surface implemented
  • Production hardening and operator audit report
  • Expanded firmware command catalog validation
motorcontroller firmware
  • Firmware mirrored to VisionX repository
  • SIM800L poll path aligned with integrated web service
  • DFPlayer assets and prompt map retained
  • Compile-time cleanup and board profile verification
  • Device-field validation with production APN set
identity and platform management
  • Keycloak-IAM bootstrap and realm wiring
  • CloudAPI OIDC provisioning through /api/auth/me
  • Platform Management Client routed at /iam-client
  • Role-aware launcher visibility for each platform surface
  • Production federation and key rotation hardening
node-red and engine runtime
  • Flow editor and dashboard hosted in Docker
  • gRPC boundary contracts maintained with .NET runtime
  • Runtime health and path probes integrated in gateway
  • Full solution pack rollout across all application families
  • Advanced operator dashboards for phase milestones

AMD Architecture Snapshot

Browser / Web Client
Desktop & Mobile Browser
HTTP/S + WebSocket
GIAP Mobile App
MAUI Android (net10.0)
REST + OIDC token auth
HTTP/S + WebSocket
Traefik (Production)
rmtventure.com
flow.rmtventure.com
ops.rmtventure.com
TLS termination · HTTPS 443
Reverse proxy · Basic auth
Direct (Local Dev)
localhost:8089
docker-compose.remote-access.yml
No TLS · Port forward
HTTP proxy
edge-web — Node.js 20 Express (port 3000)
Single browser gateway · Static files · Reverse proxy
/ → RMT Landing /gateway → Dev Gateway /planandprogress → Plan & Progress /iam-client → Platform Mgmt Client /flow → edge-flow proxy /core-api /api → cloudapi proxy /runtime → engine-runtime proxy /auth → keycloak proxy /motorcontroller → motorcontroller proxy /pandp /tandc → Legal pages
HTTP + gRPC + WebSocket
edge-flow
Node-RED · port 1880
/flow → Editor
/flow/ui → Dashboard
MQTT consumer
cloudapi
.NET 10 · port 8080
/health · /swagger
/api/** REST endpoints
JWT validation (OIDC)
engine-runtime
.NET · port 59060
gRPC + HTTP
CV / AI inference
PLC · acquisition · control
keycloak
IAM · port 8080
/realms/giap
OIDC / OAuth 2.0
Admin console
motorcontroller
Node.js · port 3000
/motorcontroller/ UI
/motorcontroller/healthz
PostgreSQL · shared auth
TCP / SQL / MQTT
PostgreSQL
Shared DB · port 5432
cloudapi · motorcontroller
Mosquitto
MQTT broker · port 1883
edge-flow consumer
Observability
Prometheus · Grafana
ops.rmtventure.com

Direct Documentation Links