summaryrefslogtreecommitdiff
path: root/desk/sur/nostril.hoon
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-09-11 01:48:14 +0700
committerpolwex <polwex@sortug.com>2025-09-11 01:48:14 +0700
commitb1d68ac307ed87d63e83820cbdf843fff0fd9f7f (patch)
treed6a684a70a80509e68ff667b842aa4e4c091906f /desk/sur/nostril.hoon
init
Diffstat (limited to 'desk/sur/nostril.hoon')
-rw-r--r--desk/sur/nostril.hoon54
1 files changed, 54 insertions, 0 deletions
diff --git a/desk/sur/nostril.hoon b/desk/sur/nostril.hoon
new file mode 100644
index 0000000..a1cc5ee
--- /dev/null
+++ b/desk/sur/nostril.hoon
@@ -0,0 +1,54 @@
+/- trill=trill-feed, nostr
+|%
++$ state state-0
++$ state-0
+ $: %0
+ :: nostr config
+ relays=(map @t (list event:nostr))
+ keys=(map @ux @ux) :: pubkey to privkey
+ :: own feed
+ feed=feed:trill
+ profiles=(map @ux user-meta:nostr)
+ following=(map @ux =feed:trill)
+ follow-graph=(map @ux (set follow))
+ :: TODO global feed somehow?
+
+ ==
++$ follow [pubkey=@ux name=@t relay=(unit @t)]
+++ default ^- state-0
+ =/ s *state-0
+ =/ l ~[['wss://relay.damus.io' ~] ['wss://nos.lol' ~]]
+ s(relays (malt l))
+
+++ ui
+ |%
+ +$ poke
+ $% [%fols fols-poke]
+ [%post post-poke]
+ :: [%reac reac-poke]
+ [%prof prof-poke]
+ [%keys keys-poke]
+ [%rela relay-poke]
+ ==
+ +$ post-poke
+ $% [%add pubkey=@ux content=@t]
+ [%rt id=@ux pubkey=@ux relay=@t] :: NIP-18
+ [%del pubkey=@ux]
+ ==
+ +$ fols-poke
+ $% [%add pubkey=@ux]
+ [%del pubkey=@ux]
+ ==
+ +$ prof-poke
+ $% [%add pubkey=@ux meta=user-meta:nostr]
+ [%del pubkey=@ux]
+ ==
+ +$ keys-poke
+ $% [%add ~]
+ [%del pubkey=@ux]
+ ==
+ +$ relay-poke
+ $% [%send host=@p id=@ relays=(list @t)]
+ ==
+ --
+--