Fully-modular TypeScript implementation of the Nostr protocol, oriented to web standards and edge environments
Attributes
Includes Deno configuration
Repository
Current version released
a year ago
Dependencies
deno.land/x
Lophus
Warning
Still under development and not ready for use.
Yet another TypeScript library for Nostr. It showcases how seamlessly the Web Streams API integrates with the protocol.
Features
- Declarative ๐ - Lets you focus on the data flow rather than underlying logic.
- Portable ๐ฆ - The client core (client.ts) has no dependencies on Deno or Node.js APIs.
- Lightweight ๐ชถ - The minified version of client core (client.min.js) is about 4.5 KB.
- Modular ๐ - High-level interfaces and NIPs are implemented as optional modules, which enables you to keep an app as small as possible.
- Compatible ๐ค - Shares the same data structure for events as nostr-tools.
Documentation
- API Reference (WIP)
- Examples
Supported NIPs
- NIP-01: Basic protocol
Acknowledgments
Development of Lophus is inspired by the following projects:
- nostr-tools - Reference implementation of the protocol in TypeScript
- nostring - A Nostr relay library written in Deno
- Hono - A fast, lightweight, and multi-platform Web framework for edges