forked from Kieran/snort
Nostr UI
.github | ||
.husky | ||
.vscode | ||
docker | ||
functions | ||
packages | ||
src-tauri | ||
.drone.yml | ||
.gitignore | ||
crowdin.yml | ||
Dockerfile | ||
Dockerfile.prebuilt | ||
LICENSE | ||
package.json | ||
README.md | ||
yarn.lock |
Snort
Snort is a nostr UI built with React aiming for speed and efficiency.
Snort supports the following NIP's:
- NIP-01: Basic protocol flow description
- NIP-02: Contact List and Petnames (No petname support)
- NIP-03: OpenTimestamps Attestations for Events
- NIP-04: Encrypted Direct Message
- NIP-05: Mapping Nostr keys to DNS-based internet identifiers
- NIP-06: Basic key derivation from mnemonic seed phrase
- NIP-07:
window.nostr
capability for web browsers - NIP-08: Handling Mentions
- NIP-09: Event Deletion
- NIP-10: Conventions for clients' use of
e
andp
tags in text events - NIP-11: Relay Information Document
- NIP-12: Generic Tag Queries
- NIP-13: Proof of Work
- NIP-14: Subject tag in text events
- NIP-15: End of Stored Events Notice
- NIP-18: Reposts
- NIP-19: bech32-encoded entities
- NIP-20: Command Results
- NIP-21:
nostr:
Protocol handler (web+nostr
) - NIP-25: Reactions
- NIP-26: Delegated Event Signing (Display delegated signings only)
- NIP-27: Text note references (Parsing only)
- NIP-28: Public Chat
- NIP-30: Custom Emoji
- NIP-36: Sensitive Content
- NIP-40: Expiration Timestamp
- NIP-42: Authentication of clients to relays
- NIP-50: Search
- NIP-51: Lists
- NIP-58: Badges
- NIP-65: Relay List Metadata
- NIP-78: App specific data
Running
This repository is a yarn workspace. To install dependencies, run yarn
from the project root.
To run the application, use
$ yarn start
To build the application and nostr package, use
$ yarn build
Translations
Translations are managed on Crowdin
To extract translations run:
yarn workspace @snort/app intl-extract
yarn workspace @snort/app intl-compile
This will create the source file packages/app/src/translations/en.json