Application Overview
ZenEdge is a React (Vite + TypeScript) web application for managing physical spaces, IoT adapters, meeting room displays and organization API keys under ZenSpace organizations. Users sign in with a one-time email code or with Google, pick an organization, then primarily manage:
Physical Spaces — physical locations (pod/floor/zone) and their virtual-pod mapping timeline. The detail page is the main hub for devices/adapters, webhook logs, and credential attempt history.
Meeting Room Displays — displays showing room status (create, verify, configure, monitor webhooks/screenshots).
IoT Adapters — adapter records that bridge IoT devices into a space (create, verify, edit, delete).
API Keys — organization-scoped API keys with per-permission flags. Plaintext shown once at create/rotate.
Kiosk Tablets — maps each pod (physical space) to a Hexnode-managed kiosk tablet, chooses whether the tablet runs the web or native meeting display, and monitors tablet health. Super admins also get an All Devices view of every Hexnode tablet across organizations.
The app uses React Router, Redux Toolkit, and realtime updates via Socket.IO for display status, webhooks, IoT verification, and adapter status.
The app also exposes a public magic-link page at /magic/:token that lets a guest see their booking and interact with attached devices via embedded adapter iframes — no login required.