How codercake10/flowsense works
FlowSense is an indoor wayfinding and facility-operations platform. Visitors search destinations at a kiosk, generate multi-stop walking routes, and can continue directions on a phone; administrators configure maps and navigation graphs and manage users, hardware, and analytics. The graph includes those documented product branches, while wiring is limited to relationships supported by the sampled source or README. Several backend capabilities are documented but their implementation was not sampled.
Main entry points: KioskPage.tsx Kiosk and mobile · Workspaces.tsx Admin workspaces · models.py Map and graph data · services.py Route generation
Components 27
Visitor experience
- Kiosk and mobile
frontend/client/src/pages/experience/KioskPage.tsx - Route directions
frontend/client/src/lib/routeSteps.ts - Route sketch
frontend/client/src/components/RouteSketch.tsx
Maps and routing
- Map annotation
frontend/client/src/pages/workspaces/MapAnnotation.tsx - Map API
backend/django/apps/map/views/__init__.py - Annotation API
backend/django/apps/annotation/views/__init__.py - Annotation service
backend/django/apps/annotation/services.py
Admin operations
- Admin workspaces
frontend/client/src/pages/Workspaces.tsx - Analytics workspace
frontend/client/src/pages/workspaces/Analytics.tsx - Hardware workspace
frontend/client/src/pages/workspaces/HardwareManagement.tsx - Admin sign-in
frontend/client/src/pages/experience/AuthPage.tsx
Backend services
- Search API
backend/django/apps/search/views.py - Search service
backend/django/apps/search/services.py - Navigation API
backend/django/apps/navigation/views/routes.py - Route generation
backend/django/apps/navigation/services.py - Authentication API
backend/django/apps/authentication/views.py - Authentication service
backend/django/apps/authentication/services.py - Analytics API
backend/django/apps/analytics/views.py - Hardware API
backend/django/apps/hardware/views.py
Persistent state
- Map and graph data
backend/django/apps/map/models.py - Navigation records
backend/django/apps/analytics/models.py - Admin and sessions
backend/django/apps/authentication/models.py - Activity and metrics
backend/django/apps/analytics/models.py - Device records
backend/django/apps/hardware/models.py
Other components
- Visitor
- Administrator
- MQTT broker
Connections 28
- Visitor → Kiosk and mobile: uses
- Kiosk and mobile → Search API: searches
- Search API → Search service: calls
- Search service → Map and graph data: queries
- Kiosk and mobile → Navigation API: requests route
- Navigation API → Route generation: calls
- Route generation → Map and graph data: reads graph
- Route generation → Navigation records: records request
- Kiosk and mobile → Route directions: shows directions
- Kiosk and mobile → Route sketch: renders sketch
- Administrator → Admin sign-in: signs in
- Admin sign-in → Authentication API: authenticates
- Authentication API → Authentication service: calls
- Authentication service → Admin and sessions: manages sessions
- Administrator → Admin workspaces: manages
- Admin workspaces → Map annotation: configures map
- Map annotation → Annotation API: edits annotations
- Annotation API → Annotation service: calls
- Annotation service → Map and graph data: updates graph
- Admin workspaces → Map API: views map data
- Map API → Map and graph data: reads map
- Admin workspaces → Analytics workspace: views metrics
- Analytics workspace → Analytics API: requests analytics
- Analytics API → Activity and metrics: reads activity
- Admin workspaces → Hardware workspace: manages devices
- Hardware workspace → Hardware API: updates devices
- Hardware API → Device records: reads and writes
- MQTT broker → Hardware API: delivers telemetry