pamoja for TypeScript - v0.1.17
    Preparing search index...

    Module pamoja

    The whole pamoja framework in one package.

    Each capability is its own package (@pamoja/mqtt, @pamoja/security, and so on), a hand-written facade in the language's idiom over the generated napi-rs contract in @pamoja/native: rejected promises for errors, async iteration, plain JavaScript values instead of buffers. This package depends on all of them and on @pamoja/core, the engine's surface, and re-exports them, flattening the identity, codec, helper, and MQTT surfaces and namespacing the rest, whose names are ordinary words that only read unambiguously with the capability in front of them.

    pamoja

    The whole pamoja framework in one package: every capability of one memory-safe Rust core, behind an idiomatic TypeScript facade, for IoT, robotics, and drones. Each capability is also its own package, so an application that needs one thing can depend on @pamoja/mqtt alone; this package depends on all of them and re-exports them.

    API reference documentation

    npm install pamoja
    

    Each package name opens its reference.

    Package What it covers
    @pamoja/core The transport every link shares (send, receive, subscribe, and a faulty wrapper for tests) and the runtime version
    @pamoja/security ed25519 device identity: sign a reading and verify it, so a gateway can prove it is authentic
    @pamoja/codec CBOR, JSON, and raw codecs behind one trait, delta and varint batch packing, and an f32 quantizer for metered links
    @pamoja/kit Plain-language helper math: smoothing, calibration, PID and thermostat control, trend and surge prediction, rolling windows, kinematics, and geo
    @pamoja/serial SLIP and COBS byte stuffing with streaming decoders, so a UART byte stream carries discrete packets
    @pamoja/modbus Modbus RTU requests and replies with CRC-16/MODBUS for RS485 field devices
    @pamoja/can CAN 2.0 and CAN-FD frames with 11- and 29-bit identifiers, plus J1939 decode and compose
    @pamoja/gpio I2C address frames with reserved-range checks, the four SPI clock modes, and active-high or active-low pins
    @pamoja/sensors Datasheet-anchored decoders for eleven parts: the BME280, BMP280, DS18B20, HDC1080, INA219, INA226, ADS1115, OPT3001, SCD4x, SHT3x, and TMP117
    @pamoja/actuators PCA9685 PWM and servo pulses, and stepper coil sequencing
    @pamoja/lora Time-on-air, duty-cycle off-time, and the regional channel plans a LoRa node must keep to
    @pamoja/lorawan LoRaWAN 1.0.x MAC framing, AES-CMAC and AES encryption, and both halves of the OTAA join
    @pamoja/mesh Addressed, hop-limited, CRC-checked frames and duplicate suppression that floods a packet exactly once
    @pamoja/routing Reverse-path routing that learns the cheapest route from overheard traffic
    @pamoja/mavlink MAVLink v1 and v2 framing, signing, named message fields, and the mission, command, and offboard protocols
    @pamoja/audit A tamper-evident, hash-chained log; altering, reordering, or dropping a record breaks verification
    @pamoja/session X25519 key agreement, HKDF, and ChaCha20-Poly1305 with an anti-replay window, with no TLS stack
    @pamoja/update Signed firmware manifests, streaming image verification, and A/B slots that fall back on their own
    @pamoja/power Duty cycling and an energy-aware governor that stretches work as the battery drains
    @pamoja/telemetry Observability that ships only what is worth the bytes as link cost rises, while counting everything
    @pamoja/mqtt An MQTT client with the topic and wildcard rules, as the core transport
    @pamoja/coap A CoAP client over UDP with confirmable delivery and observe
    @pamoja/loopback An in-process transport with topic matching and a fault injector, for testing with no broker
    @pamoja/sync Offline-first queues: in memory, and a crash-safe on-disk queue that survives power loss
    @pamoja/ladder Cheapest reachable link first, buffering to a store when every link is down
    @pamoja/bus An in-memory typed publish and subscribe event bus
    @pamoja/sim Noisy and replay sensors, a recording actuator, and a simulated robot that dead-reckons its pose
    @pamoja/profile Named, ready-to-run device profiles from plain data or a JSON manifest
    @pamoja/ros2 ROS 2 names, RIHS01 type hashes, CDR encoding, and rmw_zenoh key assembly, with no ROS 2 installed
    @pamoja/zenoh Zenoh key expressions: validity, canonical form, and wildcard matching

    All of them run on @pamoja/native, the compiled engine, which is one binary whichever packages you install.

    MIT

    actuators
    audit
    bus
    can
    coap
    gpio
    ladder
    loopback
    lora
    lorawan
    mesh
    modbus
    power
    profile
    ros2
    routing
    sensors
    serial
    session
    sim
    sync
    telemetry
    transport
    update
    zenoh
    Anomaly
    Calibration
    Debounce
    Depletion
    DeviceIdentity
    Geofence
    Kalman
    Median
    MqttClient
    Pid
    Quantizer
    Ramp
    Smoother
    Surge
    Thermostat
    Trend
    Window
    Coord
    MqttClientOptions
    MqttMessage
    Boundary
    Payload
    Qos
    Boundary
    Qos
    WINDOW_CAPACITY
    bearingBetween
    deadband
    distanceBetween
    fingerprint
    fromCbor
    packSamples
    toCbor
    unpackSamples
    verify
    version