Practical overview
When it fits
Use DM3 when building a web3 messaging client or integrating messaging into a dApp and you want protocol components for ENS-based profiles, encrypted messages, and delivery-service routing.
Who it is for
- Web dApp teams adding dm3 messaging UI through React components.
- Developers building a client compatible with the dm3 protocol.
- Teams creating a message delivery and storage service.
Documented uses
- Add dm3 messaging components to a web dApp.
- Build a web messaging client around the protocol.
- Create and publish delivery-service profiles through ENS.
- Create and publish user profiles with public signing and encryption keys and delivery-service references.
- Deliver, receive, decrypt and verify messages.
Requirements & limits
The public repository identifies the project as open source under the BSD-2-Clause license.
- The protocol uses ENS for registry records and references IPFS among its web3 services.
- User profiles include public signing and encryption keys and delivery-service ENS names.
- Receiving clients can use delivery-service WebSockets for new-message events or fetch messages via REST.
- The receiving delivery service-to-client communication and message-store design are outside the dm3 Message Transport Protocol.
- The repository is written in TypeScript and provides React UI components.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Publish a DM3 delivery-service profile
Create the profile data and publish it in the delivery service’s ENS text record.
Before you start
- A delivery-service endpoint URL
- An ENS domain for the delivery service
- The dm3 protocol functions and an on-chain publication path
Steps
Create a delivery-service profile and its corresponding keys with createDeliveryServiceProfile, using the service endpoint URL.
Convert the profile to a data URI with createJsonDataUri.
Publish that URI as the ENS network.dm3.deliveryService text record on the delivery service’s ENS domain.
Expected outcome
The delivery-service profile is published in the specified ENS text record.
Guide limitations
- The documented steps cover profile creation and publication, not deployment or operation of a delivery service.
- The repository describes a delivery service as buffering messages; it does not include the client-to-service communication details in the message transport protocol.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 15 October 2026
- Original website title
- dm3-org/dm3 · Official homepage title · retained in its source language

