Skip to content

[Deliverable] Chat SDK Developer Preview #316

@fryorcraken

Description

@fryorcraken

Owner: App/Chat Research

Feature: Chat SDK

FURPS:

  • F1. Accounts can be created in a permission-less way, to communicate on the network.

  • F2. Accounts can send messages to conversations with one other participant.

  • F3. All conversations benefit from forward secrecy and post-compromise security.

  • F4. Sender gets confirmation of message reception by recipient device.

  • F5. Developers can create their own payload types or use supplied basic types.

  • F6. Sdk contains a default message database for developers.

  • F7. Sdk contains a default secrets database for developers.

  • U1. Secure session setups are non-interactive, allowing messages to be sent without waiting for the recipient's device to come online.

  • U2. Conversations are initiated by sharing invite links out-of-band.

  • U3. Minimal example of the ChatSDK is no more than 25 lines of code.

  • R1. Participants in a conversation can eventually determine whether they missed messages.

  • P1. 10K active SDK users on a single shard add no more than an average of 10Mbps to the total bandwidth; based on clients generating 100 character chat messages, 4 times per minute.

  • S1. Messaging integrates RLN-like rate limit, limiting outbound messages per epoch.

  • S2. Payload definitions are versioned to support future protocol updates.

  • +4. Nimble package manager is used to build.

Checklist:

  • Specs: link to specs and/or API definition
  • Code: link to GitHub issues/PRs/Epic
  • Dogfood: link to dogfooding session/artefact
  • Docs: links to README.md or docs.waku.org (TBD)
  • Marketing: comparison table with other chat protocols/apps

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions