diff options
| author | Adam Soltys <[email protected]> | 2026-09-11 22:07:52 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-09-11 22:07:52 -0700 |
| commit | f2bc0f7d1a5098a87100d2401231ff97cd4ac626 (patch) | |
| tree | 7bd97220e3e58f2837e253fc6b1f204b0bf8e930 /android/app/src/main | |
| parent | 8beb1c17df8d1c96a43803c0d87a5c5f1ac2494e (diff) | |
| download | coinosv3-f2bc0f7d1a5098a87100d2401231ff97cd4ac626.tar.gz coinosv3-f2bc0f7d1a5098a87100d2401231ff97cd4ac626.zip | |
Follow people, read a feed of them, and put pictures in a post.
FOLLOWING. A profile page gains Follow / Following beside DM and Pay. The
contact list is the kind-3 event, kept locally so the button is right in the
first frame and refreshed from relays behind it. Publishing one is delicate:
a contact list is a shared document — other clients keep relay hints in its
content and petnames in its tags — so a follow re-fetches the newest list
first and adds or removes exactly one p tag, preserving everything else. The
button flips immediately and flips back if the publish fails. The service
worker's friend filter reads the same list, so following someone also means
their DMs stop being treated as a stranger's.
THE FEED. Posts by the people you follow, newest first, at the top of the
messages home. Replies are left out: a reply belongs to its thread, and a
timeline of half-conversations reads like eavesdropping. The last screenful
is kept locally so it opens with posts in it rather than a spinner, new posts
arrive over a live subscription while you're looking at it, and older ones
stream in as you reach the bottom — the same shape as the profile pages. A
wallet that follows nobody is told so and offered the people search.
MEDIA. The composer (now shared by the feed and the profile page) takes a
picture or a video: it uploads when you pick it and appends the URL to the
text, which is how every nostr client reads media, with a NIP-92 imeta tag
published beside it for the ones that would rather be told than guess. Posts
already render images and video inline, so they show up where they land.
Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_019mrt228Upn9nNCwGixzSLx
Diffstat (limited to 'android/app/src/main')
0 files changed, 0 insertions, 0 deletions
