docs.waku.org/docs/overview/concepts/content-topics.md
2023-05-14 14:23:15 +01:00

1.4 KiB

title
Content Topics

Content topics optimize node bandwidth usage by filtering messages based on specific topics of interest. They enable dApps to selectively process incoming live messages (Relay or Filter) and retrieve historical messages (Store) that match their filtering criteria. For more information, please refer to the 23/WAKU2-TOPICS specification.

Content Topic Format

Here is the recommended format for content topics:

/{application-name}/{version}/{content-topic-name}/{encoding}

  • application-name: This is the unique name of your decentralized application (dApp) to prevent conflicts with other dApps.
  • version: Typically starting at 1, this field helps track breaking changes in your messages.
  • content-topic-name: The specific name of the content topic used for filtering. If your dApp utilizes Waku for multiple features, it is advisable to have a separate content topic for each feature.
  • encoding: The message encoding format, with Protobuf (proto) being the commonly used choice.

For instance, if your dApp is called SuperCrypto and it allows users to receive notifications and send private messages, you can consider utilizing the following content topics:

  • /supercrypto/1/notification/proto
  • /supercrypto/1/private-message/proto