Welcome to Joystick IoT
Joystick is a comprehensive IoT platform designed for remote device control, real-time video streaming, and advanced device management. Built on a modern microservices architecture, it provides reliable connectivity, automatic failover, and a rich web interface for managing your connected devices.Quickstart
Get up and running with Joystick in minutes using Docker Compose
Architecture
Understand the microservices architecture powering Joystick
Authentication
Learn about JWT tokens, API keys, and permission systems
Device Control
Execute actions, monitor sensors, and manage device connections
Key features
Remote device control
Execute custom actions on connected devices with real-time feedback and comprehensive logging
Live video streaming
Stream video from devices using MediaMTX with automatic URL management and failover support
Dual connection slots
Automatic failover between primary and secondary connections ensures 24/7 uptime
Sensor monitoring
Track GPS, IMU, battery, and cellular signal data in real-time with historical analytics
Permission system
Fine-grained access control with feature-based permissions and device-level authorization
Real-time notifications
Stay informed with push notifications for device events, health checks, and system alerts
Platform components
Joystick is built using a modern microservices architecture:- App: React-based web interface with real-time updates
- Joystick API: Core device control and action execution engine
- PocketBase: Authentication, database, and real-time subscriptions
- MediaMTX: RTSP/WebRTC video streaming server
- Switcher: Automatic slot switching and health monitoring
- Panel: Device status dashboard and monitoring interface
- Baker: Stream management and video processing
- Studio: Advanced video compositing and layouts
- Whisper: Audio processing and communication service
All services are containerized and orchestrated with Docker Compose for easy deployment and scaling.
What you can build
Joystick is ideal for:- Remote robotics control: Operate robots and autonomous vehicles from anywhere
- IoT device management: Monitor and control large fleets of connected devices
- Surveillance systems: Stream and record video from multiple cameras
- Telemetry platforms: Collect and analyze sensor data in real-time
- Emergency response: Deploy reliable communication systems with automatic failover
Technology stack
Frontend
React 19, TypeScript, Vite, TanStack Query, Zustand, Tailwind CSS
Backend
Bun runtime, Elysia framework, PocketBase, MediaMTX
Infrastructure
Docker Compose, Traefik reverse proxy, Linux/amd64 containers
Real-time
WebSocket subscriptions, live video streaming, push notifications
Getting started
Ready to dive in? Start with our quickstart guide to deploy Joystick locally in minutes.Joystick requires Docker and Docker Compose. Make sure you have them installed before proceeding.