summaryrefslogtreecommitdiff
path: root/desk/sur/nostril.hoon
blob: a1cc5eefd9418bd4e151d9d7c43e664f95ca9423 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
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)]
  ==
  --
--