Smart Widgets are customizable, interactive components that can be embedded within Nostr events and allow to create rich, dynamic content. This proposal outlines the structure, implementation, and potential use cases of Smart Widgets.
## Motivation
Traditional static content limits user interaction and engagement. Smart Widgets provide a way to embed dynamic components, such as buttons, images, and polls, directly into Nostr events, enabling more interactive and responsive content.
## Event kind
A new addressable event kind is proposed for Smart Widgets kind 30031. This event kind will encapsulate the data necessary to render and interact with the Smart Widgets.
The content of these events `MUST` be of a specified **MIME type** in a corresponding `m` tag. It is required and can't be empty. For more info about **MIME type** [see](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
> Client `MUST` validate its support for **MIME type** and, in case it is unsupported, turn that into a `nostr:naddr1...` link to some client capable of displaying such events according to [NIP-19](../master/19.md).