mirror of
https://github.com/meshtastic/protobufs.git
synced 2026-10-08 21:20:38 +02:00
Protobuf definitions for the Meshtastic project
- Go 47.1%
- Swift 29%
- Kotlin 21.6%
- Shell 1.4%
- TypeScript 0.8%
| .github | ||
| .vscode | ||
| meshtastic | ||
| packages | ||
| tools | ||
| .coderabbit.yaml | ||
| .gitattributes | ||
| .gitignore | ||
| buf.gen.yaml | ||
| buf.yaml | ||
| LICENSE | ||
| nanopb.proto | ||
| README.md | ||
| renovate.json | ||
Meshtastic Protobuf Definitions
Overview
The Protobuf message definitions for the Meshtastic project (used by apps and the device firmware).
Generated client packages
- TypeScript package:
packages/ts - Rust package:
packages/rust - Kotlin Multiplatform package (Wire):
packages/kmp
Field metadata
Fields can carry app/UI-relevant metadata (e.g. diy_only) via the (meshtastic.field_metadata)
option - see meshtastic/field_metadata.proto. It is exposed to
consumers as reflection-free generated accessors: the KMP package generates them with a Wire
SchemaHandler (packages/kmp), and other languages via the
tools/protoc-gen-fieldmeta plugin (which has integration
recipes for firmware/Apple/Python).