2026-03-09 22:07:05 +01:00
2026-03-10 18:54:53 +01:00
2026-03-10 18:12:42 +01:00
2026-03-09 22:07:05 +01:00
2026-03-09 22:07:05 +01:00
2026-03-09 22:16:01 +01:00
2026-03-09 22:04:27 +01:00
2026-03-09 22:16:01 +01:00
2026-03-10 18:54:53 +01:00
2026-03-10 18:54:53 +01:00
2026-03-10 18:13:01 +01:00

meshcore

TypeScript library for MeshCore protocol utilities.

Packet parsing

Using the library to decode MeshCore packets:

import { Packet } from '@hamradio/meshcore';

const raw = new Uint8Array(Buffer.from("050AA50E2CB0336DB67BBF78928A3BB9BF7A8B677C83B6EC0716F9DD10002A06", "hex"));
const packet = Packet.fromBytes(raw);
console.log(packet);

/*
_Packet {
  header: 5,
  transport: undefined,
  pathLength: 10,
  path: Uint8Array(10) [
    165,  14,  44, 176,
     51, 109, 182, 123,
    191, 120
  ],
  payload: Uint8Array(20) [
    146, 138,  59, 185, 191, 122,
    139, 103, 124, 131, 182, 236,
      7,  22, 249, 221,  16,   0,
     42,   6
  ],
  routeType: 1,
  payloadVersion: 0,
  payloadType: 1,
  pathHashCount: 10,
  pathHashSize: 1,
  pathHashBytes: 10,
  pathHashes: [
    'a5', '0e', '2c',
    'b0', '33', '6d',
    'b6', '7b', 'bf',
    '78'
  ]
}
*/

Identities

The package supports:

  • Identity for public key management.
  • LocalIdentity for private key management.
  • Contact for managing named identities.
  • Group for managing groups.
  • KeyManager for managing all of the above and handling decryption.
Description
JavaScript (TypeScript) parser for MeshCore packets
Readme MIT 246 KiB
Languages
TypeScript 95.6%
JavaScript 4.4%