Skip to content

midizzz/nostr-chat-widget

 
 

Repository files navigation

What is NostriChat?

Nostri.chat is a chat widget you can easily embed in websites.

It uses Nostr as the underlying protocol, which permits a few pretty cool features.

Operation Modes

Classic chat: 1-to-1 encrypted chats

This mode implements the typical chat widget flow present in most websites. The visitor writes in the website and someone associated with the website responds.

No one else sees this communication

Global chat: Topic/Website-based communication

In this mode, the user engages in a conversation around a topic and everybody connected to the same relays can see the communication happening and interact with it.

The communication can be scoped to one or multiple topics. (e.g. #fasting, #bitcoin, or your specific website).

When a visitor interacts with this mode, the chat widget is populated with the prior conversations that have already occurred around this topic.

Imagine visiting a website about #fasting, and you can immediately interact with anyone interested in that topic; you can ask questions and receive immediate responses from others

Features

  • NostrConnect key delegation
  • Ephemeral keys
  • Encrypted DMs mode
  • Tag-scoped chats mode
  • In-thread replies
  • Root-replies mode: similar to global (publicly available) but visitor doesn't see any past history and only sees in-thread replies to the OP

About

Nostr-based embeddable chat widget

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 90.0%
  • Svelte 9.8%
  • Other 0.2%