Damus
hzrd149 profile picture
hzrd149
@hzrd149

JavaScript developer working on some nostr stuff
- noStrudel https://nostrudel.ninja
- Blossom https://github.com/hzrd149/blossom
- Applesauce https://hzrd149.github.io/applesauce

Relays (7)
  • wss://relay.damus.io – read & write
  • wss://relay.damus.io/ – read & write
  • wss://nostr.wine/ – write
  • wss://pyramid.fiatjaf.com/ – write
  • wss://inbox.relays.land/ – read
  • wss://relay.ditto.pub/ – read & write
  • wss://nos.lol/ – read

Recent Notes

Goose_in_Gensokyo · 15h
Catsie :)
Besao · 19h
They share the same leaf node. The cool part is totally opt-in, you can keep using the manual multi-leaf-node approach that the RFC provides, or use this one, which is basically a mesh sync using Blos...
hzrd149 profile picture
How did you handle the fact that each leaf node has a ratcheting key? If I remember MLS correctly each leaf node has a ratchet but its not strict, the application messages can come out of order. But I remember having an issue with two clients sharing state because they didn't want to send two application messages on the same leaf node ratchet index...

All very confusing stuff, but I'm interested how you guys got multiple clients to share the same state without fighting each other
1
Besao · 16h
Good question. There are actually two ratchets in MLS and we handle them differently. For application messages, we don't coordinate generation picks across devices. We let them race. The delivery stream carries the generation in the clear, so when one device sends at gen N, the other sees it and ad...
Alex Gleason · 18h
It's a clone of a UI a lot of people on the Fediverse are very attached to. To hopefully lower the switch cost.
Goose_in_Gensokyo · 17h
cat != kitty; // 🐈 🐈‍⬛ - can't you see the difference?..
Besao · 19h
They share the same leaf node. The cool part is totally opt-in, you can keep using the manual multi-leaf-node approach that the RFC provides, or use this one, which is basically a mesh sync using Blossom and Nostr relays. Everything is in the spec if you're interested :)
hzrd149 profile picture
In case anyone is wondering what my avatar is, its the smallest most interesting SVG shape I could hand code back when astral.ninja was the main nostr client.

When I joined nostr it was out of curiosity, so naturally I wanted to test what would break if I set my profile image to a data URI. but at the time astral.ninja limited the "picture" field to maximum length of 256 which meant that if I was going to build a data URI that would fit I would only be able to do SVG and probably only have a single <path> element.

This is the SVG I ended up writing:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10"><path fill="#fff" d="M0 0h10v10H0z"/><path d="M2 4h4v4Zm0-2v6h6Z"/></svg>

The main path "M0 0h10v10H0z" takes advantage of the fact that the fill area on paths inverts when it crosses itself. which allowed me to make the white space in the middle.

So in total this SVG encoded to a data URI has a length of 206, just enough to fit into the "picture" field in astral.ninja, although as you would imagine It didn't work so I went back to a PNG profile picture :D

131❤️5❤️3👀2♥️1👍️1😂1
Bitcoin Sikho · 19h
You wrote the profile image, cool 🫡
hzrd149 · 19h
Made a mistake, the path that makes the triangles is "M2 4h4v4Zm0-2v6h6Z"... Its been too long since I wrote SVG and I think I forgot how to read it :)
Freedom Tech Co. · 19h
ha ha, nice
Laan Tungir · 19h
That's awesome.
Sam · 19h
This reminds me of the now by gone era of coding before ai. When it was a puzzle. I once made a css ui out of different sized hexagons, it was a similar experience.
chrizzz · 19h
Cool
Gustavo · 18h
Cool. Clients should definitely support SVG there :)
Imaginaero · 18h
That’s a fascinating technical footnote – limiting profile images by character count feels almost archaic now, considering the explosion of data formats available. The persistence of that constraint speaks volumes about the early days of decentralized identity protocols.
S!ayer · 18h
Nice but of lore there
Goose_in_Gensokyo · 17h
where is astral.ninja now?.. >.<
Gigi · 17h
I love it 🤍