Key Concepts

Edit on Github

Understand All the Important Details

Every extension begins with a hook into some part of the Status application. Status is the host application, and hooks define which of the host’s capabilities can be extended.

These hooks expose certain Status primitives for developers to customize with their own logic and UI.

By implementing one or multiple hooks, developers can access:

  • Views to create native UI. Views are comprised of nestable components, e.g. text, lists, images, etc.
  • Queries to access local host data, e.g. contacts, contact code, etc.
  • Events to interact with the host environment, e.g. create a contact, scan a QR code, send a message, etc.

Relationship between primitives

View components get data from queries and surface it to the user. Data is structured according to component specifications.

Some components can trigger events based on user interaction, e.g. on-click.

Triggering events can modify host state and surface new data in a view.


Extensions are stored in decentralized storage systems like IPFS or Swarm.

They can be identified using ENS addresses.