Package docs
Pulse.Mqtt ships as focused packages. Start with the client packages, then add storage, pipeline, serializer, transport, test, or analyzer packages only when the project needs them.
| Package | Docs | Use when |
|---|---|---|
Pulse.Mqtt.Core | Reference | You need the codec, raw client, transports, or swap-point contracts without the resilient client. |
Pulse.Mqtt.Client | Getting started | You need the resilient client, routing, typed messaging, request/response, and diagnostics. |
Pulse.Mqtt.DependencyInjection | Dependency injection | You want named clients, host lifecycle, options binding, and health checks. |
Pulse.Mqtt.Endpoints | Endpoints | Minimal-API-style MapMqtt with constrained templates and per-message service scopes. |
Pulse.Mqtt.Dataflow | Dataflow | MQTT input should feed bounded source blocks and pipeline consumers. |
Pulse.Mqtt.Storage.Sqlite | SQLite storage | Session state and offline queue need a durable relational file store. |
Pulse.Mqtt.Storage.SqlServer | SQL Server storage | Session state and offline queue need a durable server database. |
Pulse.Mqtt.Storage.LiteDB | LiteDB storage | Session state and offline queue need a durable embedded document store. |
Pulse.Mqtt.Serialization.Json | JSON serializer | Typed payloads use source-generated JSON. |
Pulse.Mqtt.Serialization.MessagePack | MessagePack serializer | Typed payloads use compact binary messages. |
Pulse.Mqtt.Serialization.Protobuf | Protobuf serializer | Typed payloads use generated Protocol Buffers messages. |
Pulse.Mqtt.Transport.WebSocket | WebSocket transport | The broker is reached through ws or wss. |
Pulse.Mqtt.Transport.Quic | QUIC transport | The broker has an MQTT-over-QUIC listener (EMQX, NanoMQ). |
Pulse.Mqtt.Resilience.Polly | Reconnect policy | Reconnect timing should be owned by a resilience pipeline. |
Pulse.Mqtt.Testing | Testing | Tests need an in-process broker. |
Pulse.Mqtt.Analyzers | Analyzers | Projects should get compile-time warnings for common MQTT usage mistakes. |
For a task-oriented install map, see Package add-ons. For targets and dependencies, see Packages.
Serializer packages also have a serializer overview when you need to choose between JSON, MessagePack, and Protobuf.