🚀 We're in Private Beta
Public beta launching soon - Request early access
Build IoT applications
with TypeScript
Deploy code to your devices in minutes. Control hardware from anywhere. Update firmware over-the-air. All with the tools you already know.
import { DeviceEntrypoint } from "@devicesdk/runtime";
export default class Sensor extends DeviceEntrypoint {
async onDeviceConnect() {
// Monitor temperature sensor every 5 minutes
await this.env.DEVICE.configureAdcMonitoring(26, {
interval: 300000
});
this.env.logger.info("Sensor monitoring started");
}
async onMessage(message) {
if (message.type === "adc_reading") {
const temp = this.convertToTemperature(message.payload.value);
await this.env.DEVICE.kv.put("temperature", temp);
}
}
}
What you can build
From simple sensors to complex automation systems
Remote Device Control
Control hardware from anywhere with real-time WebSocket connections. Instant command execution.
See examplesFleet Management
Deploy code to hundreds of devices instantly. Per-device versioning with safe rollback capabilities.
Learn moreReal-Time Monitoring
Track device status and telemetry live. Monitor sensor data and get instant alerts.
See examplesOver-the-Air Updates
Push firmware updates remotely. Update device scripts without touching hardware.
Learn moreIoT Automation
Build workflows that respond to events. Trigger actions based on sensor data.
See examplesSensor Networks
Collect data from distributed devices. Process and analyze telemetry in real-time.
Learn moreThe complete platform
Everything you need from development to production
Build Locally
- TypeScript-first development
- Local simulator for testing
- Fast iteration with hot reload
- Powerful CLI tools
Deploy Instantly
- One command deployment
- Global infrastructure
- Per-device versioning
- Instant rollback
Manage Everything
- Web dashboard
- Device monitoring
- Script version history
- API tokens & auth
Developer experience first
Get started in minutes with tools you already know
Install the CLI
One command to get all the tools you need
Initialize your project
Scaffold with TypeScript config and starter files
Develop locally
Test with the built-in simulator, no hardware needed
Deploy to devices
One command pushes your code to production
$ npm install -g @devicesdk/cli
$ devicesdk login
✓ Logged in as you@example.com
$ devicesdk init my-project
✓ Created devicesdk.ts
✓ Created src/devices/device.ts
$ devicesdk dev
â–¶ Starting local simulator...
✓ Simulator running at http://localhost:8181
$ devicesdk deploy
✓ Built device.ts
✓ Deployed to 3 devices
Simple, usage-based pricing
Pay only for messages sent and received. Better code = lower costs.
No uptime charges. No hidden fees.
View full pricingSecure by default
Enterprise-grade security built into every layer
OAuth Authentication
Secure Google sign-in with session management
Device Tokens
Per-device credentials with API key management
Encrypted Connections
TLS encryption for all WebSocket traffic
Isolated Execution
Scripts run in isolated environments
Version History
Automatic backups and rollback protection
Audit Logging
Track all deployments and changes
Start building today
Join developers shipping IoT applications worldwide
No credit card required • 500 free messages daily
Resources & Community
Everything you need to succeed