Files
meshtastic-web/packages/sdk
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>Dan DitomasoHunter Thornsberry
aec3ad9ed3 chore(deps-dev): bump oxfmt from 0.58.0 to 0.59.0 (#1306)
* chore(deps-dev): bump oxfmt from 0.58.0 to 0.59.0

Bumps [oxfmt](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt) from 0.58.0 to 0.59.0.
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxfmt/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/oxfmt_v0.59.0/npm/oxfmt)

---
updated-dependencies:
- dependency-name: oxfmt
  dependency-version: 0.59.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: fix formatting issues for oxfmt 0.59.0

* fix: add vitest.config.ts for packages/ui to avoid unplugin-dts TypeScript 7 crash

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Dan Ditomaso <dan.ditomaso@gmail.com>
Co-authored-by: Hunter Thornsberry <hunter@hunterthornsberry.com>
2026-07-22 12:43:26 -04:00
..
2026-06-16 20:30:08 -04:00
2026-06-16 20:30:08 -04:00

@meshtastic/sdk

Domain-driven SDK for Meshtastic devices. Feature slices with signals-backed reactive state.

Replaces @meshtastic/core. During migration a shim layer re-exports the legacy MeshDevice class so existing consumers keep building — see src/shim/.

Install

pnpm add @meshtastic/sdk @meshtastic/transport-web-serial

Quickstart

import { MeshClient } from "@meshtastic/sdk";
import { TransportWebSerial } from "@meshtastic/transport-web-serial";

const transport = await TransportWebSerial.create({ baudRate: 115200 });
const client = new MeshClient({ transport });
await client.connect();

client.chat.send({ text: "hello mesh" });
console.log(client.nodes.list.value);

See the repo root README for architecture and feature slice layout.

Layout

src/
  core/            # shared kernel: client, transport, event-bus, queue, xmodem, signals, logging, packet-codec
  features/        # DDD feature slices (device, chat, nodes, channels, config, telemetry, position, traceroute, files)
  shim/            # legacy MeshDevice compatibility exports (removed in Phase C)

License

GPL-3.0-only.