A Nostr client that makes relays a first-class concept
Go to file
Jonathan Staab 995904a2b2 Split cursor and scroller up 2022-11-30 10:53:12 -08:00
public First commit 2022-11-22 17:28:33 -08:00
src Split cursor and scroller up 2022-11-30 10:53:12 -08:00
.ackrc Improve channel management and chunked retrieval of events 2022-11-29 10:21:51 -08:00
.eslintrc.cjs First commit 2022-11-22 17:28:33 -08:00
.fdignore First commit 2022-11-22 17:28:33 -08:00
.gitignore Load account during initial setup 2022-11-26 21:38:25 -08:00
CNAME Add CNAME file 2022-11-26 21:47:56 -08:00
README.md Split cursor and scroller up 2022-11-30 10:53:12 -08:00
index.html Nail down sub/unsub with modal 2022-11-30 09:12:28 -08:00
jsconfig.json First commit 2022-11-22 17:28:33 -08:00
package-lock.json Improve channel management and chunked retrieval of events 2022-11-29 10:21:51 -08:00
package.json Improve channel management and chunked retrieval of events 2022-11-29 10:21:51 -08:00
postcss.config.cjs First commit 2022-11-22 17:28:33 -08:00
tailwind.config.cjs Get everything working again 2022-11-30 10:26:58 -08:00
vite.config.js Load account during initial setup 2022-11-26 21:38:25 -08:00

README.md

Bugs

  • Use cursor for chat rooms
  • Load/publish user preferred relays
  • Optimistically load events the user publishes (e.g. to reduce reflow for reactions/replies). Essentially, we can pretend to be our own in-memory relay.

Features

  • Chat
  • Threads/social
  • Search
  • Followers
  • Server discovery
  • Favorite chat rooms

Nostr implementation comments

  • It's impossible to get deletes for an event's replies/mentions in one query, since deletes can't tag anything other than what is to be deleted.
  • Recursive queries are really painful, e.g. to get all notes for an account, you need to 1. get the account's notes, then get everything with those notes in their tags, then get deletions for those.
  • The limit of 3 channels makes things difficult. I want to show a modal without losing all the state in the background. I am reserving one channel for one-off recursive queries.
  • Why no spaces in names? Seems user hostile