Nothing forbids people from creating Nostr event kinds with code in them. Kind 5392 could be HTML code, 5393 CSS, and 5394 JavaScript. Then a Nostr-native browser can simply render events as if they were files on a regular webpage. The only difference is that now they can be stored in any existing relay.

Do you want to truly decentralize the web? Kill DNS.

Reply to this note

Please Login to reply.

Discussion

Spicy.

DCDN... Distributed Content Delivery Notework

🤯

It is time to rebuild!

Did you mean kill CDN?

Caffeine's still kicking in... How does this replace DNS? Or maybe I'm misreading?

All file resolutions happen via Nostr event-finding protocols and not via DNS. Without webpages, no one needs DNS.

Ah ok, I gotcha. How would I connect to my first relay? 😅

I like the idea of typed events, but do you really believe in a decentralized web? The first one was also meant to be decentralized. It ended hyper-centralized.

That's not impossible, but changing browsers is a huge ask. Instead, I am opting for a PWA dashboard to manage all nostr WebApps.

What does PWA mean? Cross platform?

Progressive web applications are a functionality that allows you to transform your website into a standalone app, behaving just like a regular app. It is also cross platform.

Wow. That’s a game changer.

That's cool! Is it working already? Maybe one day you can just shift to load those projects from event kinds the user follows :)

It not ready yet, but if you are using Android it kind of works. Sending you DM.

How easy is it for an average person to setup a relay at home? Is it possible to have a relay on a Synology NAS using Docker?

Nostream has a docker build. Not 100% sure it would work on that NAS buuut it wouldent hurt to try.

Thanks. I’ll check it out.

I think relays can start publishing their IP with their pubkeys at some point..

They really should.

Agora só falta se tornar pago tambem 😁😁😁😁

I built https://nostrsites.com to render html and JavaScript code from nostr notes. Right now it uses kind 1 events, but if another kind is created to make this easier, that would be awesome

Just create another kind. If you create, I will try to use it.

Cool I’ll look into this. Never created a kind before 😅

Just change the integer from 1 to a number nobody uses. Then, if you want, describe the way to work with those events in a new NIP.

I’m prevented by being a beginner coder. The only language I know is #python and some #html

I bet 1k sats that someone will develop a Nostr DNS in less than 1 month by now :)

How can you properly sandbox the js without same origin policy and CSP?

Change to same-author policy? Things will need to be adapted, of course.

PWA, how secure is it? It the key online then or is it offline saved on login!

Yes! All that would be left is to kill ICANN =3

nostr:note1520mgguzqadqnrpunxgumqjjcx8p685xmr954q3g2pw8dc7svv8qhw30ne

Did nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 accidentally reinvent the whole internet?

This is extremely interesting!

Why not just have one kind for HTML as it natively embeds the two other?

As for DNS, I think you gotta tear down SSL/CAs hierarchy as well.

Separate kinds was just easier to parse in my case. But it could be just one.

Yep, CAs are fully controlled by the state. So, sign me up :)

I used to pack/dist my apps as single file html's. Maybe still am, gotta check.

Meanwhile the folks over at Delta chat have been researching a distributable/minimal runtime format they call webxdc dot org.

Have you seen it?

Keep in mind that most relays limit events in 100K bytes. So having mulitple events to represent a page is better.

The concept is very cool! Maybe we can do a renderer in Amethyst for it. We need to figure out how to sandbox the html, though.

Oh, that's actually plenty of space! I'm trying to keep track of all free storages of at least 1K.

But yes, bootloading webxdc in amethyst would potentially bring games to nostr/steamstr.

Oh boy the deltas would pop a vein 😂

FYI, there is already a kind 30053 to replace DNS records in Nostr. Essentially pointing to an nevent gets redirected to an IP.

nostr:npub1nlk894teh248w2heuu0x8z6jjg2hyxkwdc8cxgrjtm9lnamlskcsghjm9c and I were playing with it some months ago. We never finished it, but the idea is promising.