Matrix Conference 2024

Standalone Matrix-based apps using the Widget API
09-21, 13:30–14:15 (Europe/Berlin), LAB Green (Basement)

Despite having a limited access to the Matrix API, Widgets have shown to be useful in situations where you need to host external applications within your Matrix client. Widgets have also shown that beyond-chat apps are possible using rooms as domain specific data containers, with custom extensible events and uploaded media. Still, they depend on an existing Matrix client that implements the Widget API.

In this talk we will provide an overview of the technology supporting Matrix Widgets, the tools and demos that exist, and present how we have implemented a standalone Widget client that allows us to have the NeoBoard Widget running outside of a traditional Matrix client context, as a full-blown Matrix-based application.


The focus of this talk will be to present a detailed overview of Matrix Widgets and show how you can use the Matrix Widget API and the Matrix Widget Toolkit to develop single-page applications that are able to leverage the Matrix protocol to build any type of app, especially those that can benefit from end-to-end encryption and real-time data syncronisation.

We will address the following topics:

  • What are Matrix Widgets and the Widget API
  • Demonstration and overview of Widgets developed by Nordeck
  • Current state of Widgets
  • Client support
  • Matrix Widget Toolkit
  • Element Call and the reverse Matrioshka approach
  • Widgets on Element X and the Rust SDK

  • Standalone NeoBoard

  • Building a standalone Matrix Widget client
  • Hybrid Widgets, NeoBoard as both an App and a Widget
  • What lies ahead

When we wrap up, you should have a solid understanding of the benefits and shortcomings of developing Widgets with Matrix. know some inspirational examples of real-life widgets and how they are being used, and be familiar with the tools to develop your own.

Matrix Developer @ Nordeck IT + Consulting GmbH, currently working on Matrix Widgets.

This speaker also appears in: