Build for Mota
Three SDKs, one ecosystem. Build apps for Mota OS and Mota Mobile OS, or write hardware drivers.
Mota OS SDK
Build web, native, and cross-platform desktop apps with the oskit CLI, MotaUI toolkit, and Mota App Store.
ExploreMota Mobile OS SDK
Build phone and tablet apps with telephony, sensors, haptics, NFC, camera, and biometric APIs.
ExploreDriver SDK
Write hardware drivers in Rust with memory safety, crash isolation, stable ABI, and no GPL obligation.
ExploreDeveloper SDK
Build applications for Mota OS using web technologies, native languages, or cross-platform frameworks. One CLI tool handles the entire workflow.
Application Tiers
Web Apps
React, Vue, Svelte, or vanilla HTML/CSS/JS. Shared web runtime — ~5 MB vs ~180 MB for Electron.
- Fastest to build
-
mota.*native JS API - Hot reload with Vite
Native Apps
Rust, C++, C#/.NET, Go, or Zig. Direct Wayland + MotaUI widget toolkit.
- Direct GPU (Vulkan)
- MotaUI widget toolkit
- Best performance
Cross-Platform
Flutter, .NET MAUI, Qt 6, Kotlin Multiplatform, or React Native.
- Existing codebases work
- Mota platform plugins
- Share code across OSes
oskit CLI
One tool for the entire workflow — scaffolding, development, building, testing, and publishing.
# Scaffold a new web app
$ oskit init --template=web-react my-app
# Run local dev server with hot reload
$ oskit dev
# Build a release package (.ospkg)
$ oskit build --release
# Publish to the Mota App Store
$ oskit publish
# Migrate from Electron
$ oskit migrate --from=electron
App Store & Distribution
15%
Revenue share
$0
Developer fee
<24h
Review time
Sideloading always permitted. No gatekeeping. Proprietary and open-source apps welcome. Revenue share drops to 10% above $1M/yr.
Mobile SDK
Build mobile apps using the same oskit CLI, package format, and app store as Mota OS. One codebase targets phone, tablet, and desktop.
Same SDK, Same App Store
The Mobile SDK extends the Mota OS Developer SDK. Web apps, native apps, and cross-platform apps all work on both desktop and mobile. Same .ospkg format, same signing keys, same app store.
# Create a mobile app
$ oskit new myapp --template native-rust --target mobile
# Build and run on device
$ oskit build --release
$ oskit run --device
# Publish to the app store
$ oskit publish
Mobile-Specific APIs
Access telephony, sensors, haptics, NFC, biometrics, camera, geofencing, push notifications, and location services through type-safe SDK bindings.
Dial calls, send SMS, read call log, signal strength
Accelerometer, gyroscope, magnetometer, barometer, proximity, ambient light, step counter
8 predefined patterns + custom patterns (amplitude, duration, pause)
Tag read/write, NDEF parsing, HCE payments, beam
Fingerprint and face authentication via TEE (user confirmation required)
Multi-lens control, photo/video capture, viewfinder streaming
GPS, network, cellular positioning (high/balanced/low accuracy), geofencing
Register and receive messages via UnifiedPush (no Google dependency)
Mobile UI Components
MotaUI includes mobile-specific widgets extending the desktop toolkit. All components follow platform conventions for touch targets (48x48dp min), reachability, and gesture interaction.
Bottom Nav
Bottom Sheet
Swipe Actions
Pull to Refresh
FAB
Snackbar
Nav Drawer
Scrollable Tabs
Collapsing Bar
Full Dialog
Driver SDK
Write hardware drivers in Rust with memory safety, crash isolation, and a stable ABI. Drivers run in userspace — a crash restarts the driver in under 500ms, not the system.
Stable ABI
Drivers compiled for v1.0 work on all future kernel versions without recompilation.
Memory Safe
Rust prevents buffer overflows, use-after-free, and null dereferences at compile time.
Crash Isolated
Userspace process isolation. Driver crashes auto-restart in <500ms without system impact.
No GPL Obligation
Drivers are userspace processes, not kernel modules. Proprietary drivers are permitted.
Hardware Access API
| API | Purpose | Use Case |
|---|---|---|
| MmioRegion | Memory-mapped I/O with bounds checking | Register access |
| DmaBuffer | DMA with physical/virtual address tracking | Packet buffers, command queues |
| InterruptHandler | IRQ handling (top-half / bottom-half) | Hardware interrupts |
| Channel<Req, Resp> | Typed IPC with applications | Driver communication |
Supported Device Types
Drivers implement one of these standard traits:
NVMe, SATA, eMMC, USB Mass Storage, SD/MMC
Wi-Fi, Ethernet, Bluetooth
GPU, display controllers, external monitors
Keyboard, mouse, touchscreen, HID
Audio codecs, USB audio, HDMI, Bluetooth audio
IMU, light sensor, barometer, temperature, proximity
Ready to Build?
Grab the SDK and start building. No developer fees, no gatekeeping, no telemetry.