Kevin

Kevin Clients — fleet-mobile + kevin-desktop

Two surfaces, shared SDK, JWT auth, MQTT live state.

Kevin Clients — fleet-mobile + kevin-desktop (v2026-09-30T101154Z-5e473105f4) 2026-09-30 | Two surfaces, shared SDK, JWT auth, MQTT live state. 1 - Fleet Mobile Initialization Fleet Mobile App apps/fleet-mobile/App.tsx:20 initializeStorage() GET /api/health NavigationContainer NavigationContainer createNativeStackNavigator createBottomTabNavigator Local Storage initializeStorage() localStorage async-storage App starts Navigation set… 2 - Kevin Desktop Initialization Kevin Desktop App GET /api/health net start KevinDaemon Electron Main Process main.js preload.js daemon-api Daemon State daemon.log KevinDaemon systemd service App starts Daemon setup 1. App starts 2. Initialize storage 3. Setup navigation 4. Daemon starts 5. Setup IPC 6. Initialize state Fleet Mobile App Configuration { "expo": { "name": "Fleet Mobile", "slug": "fleet-mobile", "version": "0.1.0", "orientation": "portrait", "icon": "./assets/icon.png", "userInterfaceStyle": "light", "splash": { "image": "./assets/splash.png", "resizeMode": "contain", "backgroundColor": "#ffffff" }, "assetBundlePatterns": [ "**/*" ], "ios": { "supportsTabletMode": true, "bundleIdentifier": "com.kevin.fleet.mobile" }, "android": { "adaptiveIcon": { "foregroundImage": "./assets/adaptive-icon.png", "backgroundColor": "#ffffff" }, "package": "com.kevin.fleet.mobile", "permissions": [ "android.permission.INTERNET", "android.permission.ACCESS_NETWORK_STATE" ] }, "web": { "bundler": "metro" }, "plugins": [ "expo-network", "expo-device" ] } } Kevin Desktop IPC Handler { "daemon-api": "http://127.0.0.1:8001/api/health", "service-control": "net start/stop/restart KevinDaemon", "system-action": "File operations (open logs, config, settings)" } 6 of 12 identifiers appear only in design docs, not in code — this shows SPECIFIED behaviour, not verified implementation. Fleet Mobile uses React Navigation for UI routing. Kevin Desktop uses Electron for cross-platform desktop application. Both applications rely on a daemon for backend services. Legend actor = initiates work · process = code path · store = state on disk · bus = durable queue · dashed = separate process cyan = request flow · pink = state read/write · dashed green = pull / return path · red = refusal As of 2026-09-30 10:11 UTC, from commit 5e47310

Provenance

This drawing is generated, not drawn. It is rebuilt from the source files below, so when they change the picture changes — a diagram here cannot quietly describe a system that no longer works this way.

Owner
Kevin
Slug
kevin-clients
Rendered
2026-09-30T101154Z
From commit
5e473105f4
Updated
30 Sep 2026, 10:11 UTC
Sources at
5e47310
Watches
3 paths
  • apps/fleet-mobile
  • apps/kevin-desktop
  • clients