Built production-grade React widget system for Skydio's Rivit design language, enabling real-time drone control with config-driven UI architecture and Storybook documentation.
Delivered widget system for real-time autonomous drone control
Comprehensive component documentation with accessibility testing
Action-based architecture enabling UI-as-API pattern
Skydio, a leading autonomous drone company, needed a production-grade React widget for their Rivit design language to control real-time drone missions. The challenge required:
The widget needed to function as a "UI microservice" that could be integrated into Skydio's drone control systems with minimal coupling.
I built the Autonomy Widget using a config-driven architecture that maps all actions, icons, and controls declaratively—making UI parity with Figma designs effortless.
Central action configuration pattern enabling declarative UI:
// AutonomyWidget.configs.ts
const ACTION_CONFIGS = {
pause: {
icon: PauseIcon,
label: 'Pause',
tooltip: 'Pause current mission',
variant: 'secondary'
},
orbit: {
icon: OrbitIcon,
label: 'Orbit',
tooltip: 'Enable orbit mode',
variant: 'primary'
},
// ... 15+ mission actions
} as const
// Usage: Automatic UI generation
<IconButton {...ACTION_CONFIGS[action]} />React Context Provider pattern for unified widget state:
Built highly composable React components:
Adaptive layouts using Tailwind CSS v4:
Comprehensive component playground:
Modular exports for clean import paths:
// Clean imports via barrel pattern
import {
AutonomyWidget,
IconButton,
OrbitSlider
} from '@/components'
// Instead of deep imports
import AutonomyWidget from '@/components/AutonomyWidget'
import IconButton from '@/components/IconButton'Streamlined design handoff:
Widget functions as "UI microservice":
Modern development stack:
The Autonomy Widget established a production-grade foundation for Skydio's drone control interfaces:
Delivered a composable, well-documented component library that accelerated Skydio's product development while maintaining design system consistency across their autonomous drone platform.