Oddbean new post about | logout
 - Bug: One slow or unresponding relay can hang the whole UI by keeping the note composer open forever. This sometimes happens if one of the relays I use is down or unreachable due to network restrictions. After a few moments I have to close it manually. Opt to optimistic updates and show an error message if a relay is being a butt and perhaps allow the user to ignore errors from that relay going forward (list = ignored relays).
- You still use outdated relay storage. Please use kind:10002 instead.
- Keyboard shotcuts in the webapp.
** n = New note
** ctrl+enter = send note
** tab = go down the list of currently displayed notes (might need to use tab-order or other attrs)
*** [L]ike, [R]epost, [Q]uote, [B]ookmark
- Badges support
- Status support
** Opt to show status in DM menu
- Custom emojis support
- Respect self-DMing (aka. Note To Self); right now I end up in the "Not followed" tab, it is a super useful feature to get stuff from device A to B.
- "Seen on" option in the ... menu to figure out where a note is at or was seen at.
- Option to dismiss the Downloads sidebar entry (opt-in). I have the app, it's just kinda broken on my Pixel Fold...
- Search: Whenever I tried to manually search for (user)_at_(instance)@mostr.pub it would fail to find anything. Maybe look into your NIP-05 resolver?
- We can manage Muted accounts, but not blocked ones?
- Option to DISABLE URL previews or make them smaller - they are big and can bloat a note that only means to reference a thing.

Smaller, less important things:
- Render LN invoices
- Render popular cloud streaming services like Spotify and friends in a nice way. Sadly, song.link does not have a public API, but it would help since not all of those links actually have proper og:-metadata.
- NosTree interop: Allow pointing at a list for custom links.
- In fact, render referenced lists and some other kinds in nostr:-prefixed entities.
- Gallery: Show all the media a user has posted (aka.: foreach n in user.notes: n.contains(urlMatcher).endsWith(imgMatcher) )

Least important: NWC interop.