What's your address, I'll send you some some lanolin
Just dropped a Coracle mini-release mid-refactor, now with NsecBunkerβ’οΈ support!
# 0.2.35
- [x] Add support for nsecbunker
- [x] Switch from npm to yarn
- [x] Upgrade nostr-tools, svelte-routing
nostr:nprofile1qqs04xzt6ldm9qhs0ctw0t58kf4z57umjzmjg6jywu0seadwtqqc75spp3mhxue69uhkyunz9e5k7qgjwaehxw309ahx7um5wgh8vvrv9e5k7qg4waehxw309ahx7um5wghxxmmfdehhxtnfduq3vamnwvaz7tmjwdekccte9ehx7um5wghxuet5qyf8wumn8ghj7un9d3shjtnxxaazu6t0qyf8wumn8ghj7ur4wfcxcetsv9njuetnqy2hwumn8ghj7etyv4hzumn0wd68ytnvv9hxgqgdwaehxw309ahx7uewd3hkcqgcwaehxw309amk2mrrdakk2tnwdaehgu3wwa5kuegpz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3vamnwvaz7tmpw3kxzuewdehhxarj9ekxzmnyqyd8wumn8ghj7un9d3shjtnwwdjkxcn4de4k2u3wvdhk6qguwaehxw309ahx7um5wgknqvfwvfhkcapwda38xetjwejhyqgkwaehxw309aex2mrp0yhxummnw3ezucnpdejqzyrhwden5te0dehhxarj9emkjmn9vzlpf4 nostr:nprofile1qqszak7w562dzerznp222fvrgk8adkt9k9s783yt2lf6luqegp2c3pqpzamhxue69uhkv6tvw3jhytnwdaehgu3wwa5kuegpz3mhxue69uhkxmr0w4jxuatvdshxcctwvsq3gamnwvaz7tmjv4kxz7fwdehhxarj9e3xwqgjwaehxw309ac82unsd3jhqct89ejhxqgewaehxw309ac82unpwe5kgcfwdehhxarj9ekxzmnyqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hsz8rhwden5te0dehhxarj9ekh2arfdeuhwctvd3jhgtnrdakszynhwden5te0danxvcmgv95kutnsw43qz8thwden5te0dehhxarj94c82c3wwajkcmr0wfjx2u3wdejhgqg4waehxw309ajkgetw9ehx7um5wghxcctwvsq3gamnwvaz7tmwdaehgu3wdau8gu3wv3jhvqg5waehxw309a3xcctnw3ezue3h0gh8s7t6qyg8wumn8ghj7mn0wd68ytnhd9hx2qghwaehxw309aex2mrp0yhxxatjwfjkuapwveukjqghwaehxw309ahx7um5wghxvmt59emkj73wvf5h5qgdwaehxw309ahx7uewd3hkcqgcwaehxw309aex2mrp0yh8xmn0wf6zuum0vd5kzmqprpmhxue69uhkc6t8dp6xu6twvaex2mrp0yhxxmmdqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpz4mhxue69uhhqun0ve5kcetn9enrw73wd9hszxnhwden5te0wfjkccte9ehx7um5wfcxcetzwvhxxmmdt8pfm3
I'm requesting to join the Nostrocket Identity Tree and claiming my permanym: hodlbod
I'm requesting to join the Nostrocket Identity Tree and claiming my permanym: hodlbod
Agreed, I switched back to npm after about 10 years to try it out, and... yeah
Switching to yarn "fixed" it
Just updated nostr-tools from 1.7.4 to 1.12, and now I'm getting some bizarre typescript errors, any ideas for how to fix them?
Error: Module '"nostr-tools"' has no exported member 'generatePrivateKey'. (ts)
import {generatePrivateKey} from "nostr-tools"
Typescript doesn't complain about stuff like `import {nip19} from "nostr-tools"`, it seems to only be exports that are re-exported from index.ts.
nostr:nprofile1qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8gpz3mhxue69uhhyetvv9ujumn0wd68ytnzvuqjyamnwvaz7tmwdaehgu3dwejhy6txd9jkgtnhv4kxcmmjv3jhytnwv46qzxthwden5te0dehhxarj9eax2cn9v3jk2tnrd3hh2eqpz4mhxue69uhkummnw3ezumtfd3hh2tnvdakqz9thwden5te0v4jx2m3wdehhxarj9ekxzmnyqyxhwumn8ghj7mn0wvhxcmmvqywhwumn8ghj7mn0wd68yttsw43zuam9d3kx7unyv4ezumn9wsq3samnwvaz7tmjv4kxz7fwdehhxarjv96xjtnrdaksz9nhwden5te0wfjkccte9ehx7um5wghxyctwvsq3yamnwvaz7tmwdaehgu3w0f3xgtn8vuq3qamnwvaz7tmwdaehgu3wwa5kuegpwpmhxue69uhk7enxvd5xz6tw9ec82cs2pfmhxue69uhk2tnwdaejumr0ds98wumn8ghj7mn0wvhxcmmvpfmhxue69uhkummnw3ezuun9d3shjetj9eek2znhwden5te0wfjkccte9ehx7um5wghxyec2waehxw309ahkvenrdpskjm3wwp6kyqg3waehxw309ahx7um5wghxcafwddjs3x6pac nostr:nprofile1qqs04xzt6ldm9qhs0ctw0t58kf4z57umjzmjg6jywu0seadwtqqc75spp3mhxue69uhkyunz9e5k7qgjwaehxw309ahx7um5wgh8vvrv9e5k7qg4waehxw309ahx7um5wghxxmmfdehhxtnfduq3vamnwvaz7tmjwdekccte9ehx7um5wghxuet5qyf8wumn8ghj7un9d3shjtnxxaazu6t0qyf8wumn8ghj7ur4wfcxcetsv9njuetnqy2hwumn8ghj7etyv4hzumn0wd68ytnvv9hxgqgdwaehxw309ahx7uewd3hkcqgcwaehxw309amk2mrrdakk2tnwdaehgu3wwa5kuegpz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3vamnwvaz7tmpw3kxzuewdehhxarj9ekxzmnyqyd8wumn8ghj7un9d3shjtnwwdjkxcn4de4k2u3wvdhk6qguwaehxw309ahx7um5wgknqvfwvfhkcapwda38xetjwejhyqgkwaehxw309aex2mrp0yhxummnw3ezucnpdejqzyrhwden5te0dehhxarj9emkjmn9vzlpf4
How does the token work? Do you need that every time, or is that just intended to bypass manual authorization? IOW, authentication depends on the approved app key, right?
Upvote, but I feel like we need a way to surface relay policies like this better. Clients need to make it easy to add relay-specific feeds/publishing too. Great step in the right direction though.
sir, took some more time to get around to it but here it is:
quick and dirty implementation of nsecbunker
key points:
* uses a separate relay connection (I think it makes more sense to have the signer connectivity separate since it's useless to push the signing events to pretty much all relays except the ones where nsecbunker is listening to)
* local key, generated locally
https://github.com/coracle-social/coracle/commit/c2cf06ee0101d46cbb08576a4b03fc8c1a7fc3f3
Is this a security vulnerability? IOW, if you log out of Coracle, the browser still has write access via nsecbunker if the same pubkey is re-entered. So you're logged out, but it's trivial to log back in without re-establishing permission. It seems to me the key should be re-generated every login.

No, I just mean it's sort of out there for a nostr client, no critique at all
Says the guy who added cashu to his nostr client
sir, took some more time to get around to it but here it is:
quick and dirty implementation of nsecbunker
key points:
* uses a separate relay connection (I think it makes more sense to have the signer connectivity separate since it's useless to push the signing events to pretty much all relays except the ones where nsecbunker is listening to)
* local key, generated locally
https://github.com/coracle-social/coracle/commit/c2cf06ee0101d46cbb08576a4b03fc8c1a7fc3f3
Fantastic, thanks
nostr:nprofile1qqs04xzt6ldm9qhs0ctw0t58kf4z57umjzmjg6jywu0seadwtqqc75spp3mhxue69uhkyunz9e5k7qgjwaehxw309ahx7um5wgh8vvrv9e5k7qg4waehxw309ahx7um5wghxxmmfdehhxtnfduq3vamnwvaz7tmjwdekccte9ehx7um5wghxuet5qyf8wumn8ghj7un9d3shjtnxxaazu6t0qyw8wumn8ghj7mn0wd68ytfsxyhxymmvwshx7cnnv4e8vetjqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqpzpmhxue69uhkummnw3ezuamfdejszynhwden5te0wp6hyurvv4cxzeewv4esz9thwden5te0v4jx2m3wdehhxarj9ekxzmnyqyxhwumn8ghj7mn0wvhxcmmvqyv8wumn8ghj7am9d33k7mt99ehx7um5wgh8w6twv5q3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7qgkwaehxw309ashgmrpwvhxummnw3ezumrpdejqzxnhwden5te0wfjkccte9eh8xetrvf6ku6m9wghxxmmdvfm6mp building out my nsecbunker integration, do you have a tutorial or documentation I can follow? So far I'm just trying to reverse engineer the protocol and getting stuck. Right now I'm using an ephemeral key to sign events (which I assume is the "app" key you approve requests for?), and using the pubkey I want to sign the event for as the #p tag and destination of the nip04 encrypted contents. I'm also sending events to relay.nsecbunker.com for testing. But currently the response I'm getting is just the same event I sent, complete with the signature I gave it. Any tips?
new version of ndk-svelte-components (and NDK too)
π Minimally-styled event cards
```
```
and it will render it.
Supported kinds:
* Short notes (kind:1)
* Highlights (kind:9802)
This is minimal, but it's lays the foundation. Eventually every event kind will be supported.
Kudos to nostr:npub1jlrs53pkdfjnts29kveljul2sm0actt6n8dxrrzqcersttvcuv3qdjynqn, he doesn't know it, but it's pretty much fully his code from Coracle doing this π
Truly hilarious to see my code there. How recently did you pull it? I have support for 3 or 4 other kinds and recently did some fairly painful work with quotes I wouldn't want you to have to replicate (recursive parameterized slot forwarding π₯Ά)
new version of ndk-svelte-components (and NDK too)
π Minimally-styled event cards
```
```
and it will render it.
Supported kinds:
* Short notes (kind:1)
* Highlights (kind:9802)
This is minimal, but it's lays the foundation. Eventually every event kind will be supported.
Kudos to nostr:npub1jlrs53pkdfjnts29kveljul2sm0actt6n8dxrrzqcersttvcuv3qdjynqn, he doesn't know it, but it's pretty much fully his code from Coracle doing this π
π
I used to be meh about hash cash style proof of work. Since listening to nostr:nprofile1qqs0w2xeumnsfq6cuuynpaw2vjcfwacdnzwvmp59flnp3mdfez3czpspzemhxue69uhhyetvv9ujuum5dahx2u3wvdhk6qgkwaehxw309ahx7um5wghx7mnnv968xtn0wfnsz8rhwden5te0dehhxarj94ex2mrp0yh8wmrkwvh8xurpvdjsz8rhwden5te0dehhxarj9e3xjarrda5kuetj9eek7cmfv9kqz8nhwden5te0dehhxarj9eax2un0vejk2un0w46xjmn89e3k7mgpr4mhxue69uhkummnw3ez6ur4vgh8wetvd3hhyer9wghxuet5qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hsz9mhwden5te0wfjkccte9ehx7um5wf5kx6pwv3jsz9nhwden5te0dehhxarj9em82mrsv4kjucm0d5q3vamnwvaz7tmwdaehgu3wd4hh2ar0dchxgetkqyfhwumn8ghj7mn0wd68ytnp0f6x2tnrduq37amnwvaz7tmwdaehgu3dwfjkccte9e3xjarrda5kutnwd9hx5cgdgvnyr recently I think it's integral to stopping spam (alongside web of trust, which is a subjective evaluation of content quality relative to the user as opposed to blanket domain reputation). Still have to build it though.
