"Introducing AimDB: A Rust Dataflow Engine from MCU to Cloud"
We're excited to announce AimDB — an async, in-memory Rust runtime designed to stream sensor and state data across microcontrollers, edge gateways and cloud environments using the same no_std-compatible API.
Why We Built AimDB
Modern IoT and edge computing architectures face a common challenge: data flows through multiple layers — from sensors to MCUs, through edge gateways and finally to the cloud. Each layer traditionally requires different data handling approaches, leading to:
- Code duplication across different runtime environments
- Complex data transformations at each boundary
- Difficult debugging when issues span multiple layers
- High cloud costs from moving raw data upstream
The AimDB Approach
AimDB introduces portable data contracts — Rust schema definitions that work identically whether you're running on an STM32 microcontroller or a Kubernetes cluster.
#[derive(Contract)] struct Temperature { sensor_id: u32, celsius: f32, timestamp: u64, }
This same contract compiles for no_std embedded targets (Cortex-M4, STM32) and standard Rust on Linux or Kubernetes, letting you:
- Define once — Write your data schema in one place
- Deploy anywhere — Run the same logic on MCU, Edge or Cloud
- Transform at the edge — Process data where it makes sense, not just where it's convenient
What's Next
We're just getting started. Here's what's coming — we'll update this list as posts go live:
- Portable Async Rust: Targeting Embassy, Tokio and WASM from One Codebase — deep dive into the runtime abstraction
- Performance benchmarks across different targets
- Integration guides for popular edge platforms
Try the live demo to see AimDB in action, or read the documentation to get started with your own project.
Have questions? Open an issue on GitHub or join the discussion.