pamoja#
One memory-safe Rust core with bindings for TypeScript, Python, and C#, for the devices that watch and control the physical world: sensors, gateways, robots, and drones, built to run on cheap hardware with weak or no connectivity.
Every capability is a crate in Rust and a package in each binding, and every guide shows the same task in all four languages. The code in a guide is spliced from a test that runs in CI, so an example that stops working fails the build rather than the reader.
Start here#
cargo add pamoja # Rust
npm install pamoja # TypeScript and Node
pip install pamoja # Python
dotnet add package Pamoja # C# and .NETThat is the whole framework. To take less than all of it, and to see what a narrow build actually costs, read Install.
If you are here with a part in hand rather than a language in mind, Hardware lists what the drivers were written against, the buses and radios the crates implement, and the boards this is built and tested on.
To see it run before reading anything, Examples lists every complete program and every guide's example in the four languages, all of which run in CI on every change.
What it covers#
Reference#
Every language has a full API reference, generated from its own source and hosted here. The page on this site names each package and links it to its page there.
| Language | Install | Reference |
|---|---|---|
| Rust | cargo add pamoja | Rust reference, every crate with its API pages, generated by rustdoc |
| TypeScript | npm install pamoja | TypeScript reference, every package with its API pages, generated by typedoc |
| Python | pip install pamoja | Python reference, every module with its API pages, generated by pdoc |
| C# | dotnet add package Pamoja | C# reference, every package with its API pages, generated by DocFX |