docs.zenspace.io
    docs.zenspace.io
    • ๐Ÿงญ Introduction
    • ๐Ÿงฑ System Components
    • ๐Ÿงฐ Tech Stack
    • ๐Ÿ—๏ธ System Architecture
    • ๐ŸŒ Deployment Architecture
    • ๐Ÿ—„๏ธ Database Design Documentation
    • API Endpoints
      • RaspberryPi
        • Heartbeat API
        • Retrieve all active sensors and device permissions
        • Control a device (e.g., turn on/off, adjust intensity)
        • Enable or disable a device
        • Register a meeting space ID and retrieve network details
      • Meeting Space
        • Schedule meeting space state
        • Get meeting spaces by customer
        • Get meeting space state by ID
        • Get meeting space state by device ID
        • Disable meeting space state
        • Send meeting space state by meeting space ID
        • Store meeting space availability
        • Create Google Calendar
      • Device Management
        • Create device
        • Create device sensors
        • Create or update admin unlock codes
        • Upload meeting space screenshot
      • Authentication
        • Create authorization token
      • Messaging
        • Send message to Android device
      • Booking
        • Send meeting space state by booking ID
        • Create or update booking

    ๐Ÿงฐ Tech Stack

    This section outlines the complete technology stack used across all modules of the Workspace Management system. The architecture leverages modern JavaScript frameworks, serverless infrastructure, real-time databases, and IoT integrations to deliver a seamless SmartPod experience.

    ๐ŸŒ Frontend (Web Portals)#

    Used across Booking Admin, Booking Client, and Customer Admin portals.
    React ^18.3.1 โ€“ core UI library
    Redux Toolkit โ€“ state management
    React Router DOM โ€“ routing
    Tailwind CSS + Shadcn UI โ€“ styling and components
    Lucide React โ€“ icons
    TanStack Table, React Big Calendar, FullCalendar โ€“ tables & calendars
    React Hook Form, Zod, @hookform/resolvers โ€“ form handling and validation
    Moment.js, Date-fns โ€“ date/time manipulation
    React Phone Number Input โ€“ phone formatting
    jsPDF, FileSaver, jsPDF AutoTable โ€“ exports & PDFs
    Sonner โ€“ UI notifications
    React QR Code โ€“ QR generation

    ๐Ÿ“ฑ Android Displays (Meeting Room Interfaces)#

    Used for touch-enabled displays outside and inside meeting pods.
    Java โ€“ Android app language (v21.0.2)
    Android SDK โ€“ SDK 34 (Min version 7)
    Firebase Core โ€“ analytics and core services
    Firebase Cloud Messaging (FCM) โ€“ push notifications
    Material UI (Android) โ€“ UI components

    โ˜๏ธ Backend (Serverless)#

    Powered by AWS Lambda for logic execution and integrations.
    Python 3.12 โ€“ primary language for Lambda functions
    AWS Lambda โ€“ serverless execution
    Amazon API Gateway โ€“ endpoint exposure
    AWS EventBridge โ€“ task scheduling
    AWS SES โ€“ transactional emails
    Amazon CloudWatch โ€“ logs & monitoring

    ๐Ÿ’ฝ Database & Auth#

    Supabase โ€“ hosted Postgres database with real-time capabilities
    Auth
    Tables
    Storage
    Edge Functions (optional)

    ๐Ÿ“… Calendar & Payments#

    Google Calendar API โ€“ for booking sync and integration
    Stripe
    Stripe JS / React Stripe JS
    Webhooks for payment processing and subscription billing

    ๐Ÿ”Œ IoT Device Control#

    Raspberry Pi (per pod)
    Python + Django
    GPIO/I2C relay control
    Hardware Devices
    Relay switches, sensors, fans, lights
    Microcontrollers (Pi, optionally Arduino)

    ๐Ÿ“ฆ Networking & Utilities#

    Axios, Lodash Debounce, Papaparse โ€“ data fetching and utilities
    Zipcode-to-Timezone โ€“ time zone detection based on location

    ๐Ÿงช CI/CD & DevOps#

    AWS CodeCatalyst
    Source repositories
    CI/CD pipelines for deployment
    Infrastructure-as-Code support

    ๐Ÿ“ Documentation & Testing#

    Apidog
    API design and documentation
    Mock server and testing
    API versioning and publishing

    ๐Ÿ”— Third-Party Services Summary#

    ServicePurpose
    SupabaseDatabase, auth, storage
    StripePayments and subscriptions
    Google CalendarSyncing bookings with calendars
    AWS LambdaServerless logic execution
    AWS SESEmail notifications
    FirebaseDevice communication (FCM)
    AWS CodeCatalystDevOps and CI/CD workflows
    ApidogAPI documentation and testing
    Previous
    ๐Ÿงฑ System Components
    Next
    ๐Ÿ—๏ธ System Architecture
    Built with