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