HalfStack AZ

2023

Luis Montes

@monteslu

@monteslu@Fosstodon.org

Web 1.0

1993: HTML 1.0

1995: HTML 2.0: <img> tag!

2006: XMLHttpRequest

Web 2.0!

Web APIs since

websockets, webRTC, video, PWAs

bluetooth, serial, usb, robotics!

GPU, threading, WASM, AI

so excited for web 3!

Decentralization !

Now ?!?!

Web 3.0 Browser APIs:

...

...

Ø

decentralization requires each peer to be a client AND a server...

So build a native app?

https://youmightnotneedelectron.com/

So you can Web-serve while you Web-browse


2012 IcedDev Blog

Ok give everyone an IP address

[0-255, 0-255, 0-255, 0-255]

32 bits

~4 billion addresses

IP v6 to the rescue!

128 bits

~3.4 * 10^38

~340 decillion addresses

~10 ^ 80 atoms in the Observable Universe

~100 Quintillion Novemdecillion atoms

sorry, IP v6 😢

How about domain names?

~1500 TLDs
63 chars for domain name
255 chars for subdomain
alphanumeric + some special chars for naming

~2.2 10^178 addresses


~2 Octillion Novemdecillion Observable Multiverse Metaverse Matrixes (matrices?) of addressable atoms!

How do we actually connect?

Reverse Proxies!

ngrok / localtunnel / hsync

Reverse Proxy Demo...

Yeah, but your hsync client isnt' running in browser

A better demo :)

https://browserver.netlify.app

Route any ports through this thing.

Put networked clients in browser

net-web

Put networked services in browser with WASM

Postgres in browser ?!?!

Bypass the hsync-server

Web RTC peer-to-peer data channels

distributed vs federated ?

what's next?

thank you!

Luis Montes

@monteslu@Fosstodon.org