Replying to Avatar b

bootstrap wiredapp from datauri

#wired #wiredapp #p2p #decentralized #datauri #stadaloneapp #serverless #hostr #nostr #pow

data:text/html;base64,PCFkb2N0eXBlIGh0bWw+PGh0bWwgbGFuZz0iZW4iPjxoZWFkPjxtZXRhIGNoYXJzZXQ9InV0Zi04Ii8+PG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCxpbml0aWFsLXNjYWxlPTEiLz48bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzAwMDAwMCIvPjxtZXRhIG5hbWU9Im1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyIvPjxtZXRhIG5hbWU9ImFwcGxlLXRvdWNoLWZ1bGxzY3JlZW4iIGNvbnRlbnQ9InllcyIvPjxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLXRpdGxlIiBjb250ZW50PSJFeHBvIi8+PG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIi8+PG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtc3RhdHVzLWJhci1zdHlsZSIgY29udGVudD0iZGVmYXVsdCIvPjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgV2lyZWQiLz48dGl0bGU+VGhlIFdpcmVkPC90aXRsZT48L2hlYWQ+PGJvZHk+PG5vc2NyaXB0PllvdSBuZWVkIHRvIGVuYWJsZSBKYXZhU2NyaXB0IHRvIHJ1biB0aGlzIGFwcC48L25vc2NyaXB0PjxkaXYgaWQ9InJvb3QiPjwvZGl2PjxzY3JpcHQ+Cihhc3luYyBmdW5jdGlvbigpewogIGFzeW5jIGZ1bmN0aW9uIGRnZXQoaWQsIHJlbGF5KXsKICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gewogICAgICBjb25zdCBzb2NrZXQgPSBuZXcgV2ViU29ja2V0KHJlbGF5KQogICAgICBsZXQgZmlsZV9kYXRhID0gW10KICAgICAgbGV0IGZpbGVpZHMgPSBbXQoKICAgICAgc29ja2V0Lm9ub3BlbiA9IGZ1bmN0aW9uKCl7CiAgICAgICAgc29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkoWyJSRVEiLCAiZmlsZWlkcyIsIHsiaWRzIjogW2lkXX1dKSkKICAgICAgfQoKICAgICAgc29ja2V0Lm9ubWVzc2FnZSA9IGFzeW5jIGZ1bmN0aW9uKGUpewogICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGUuZGF0YSkKCiAgICAgICAgaWYoZGF0YVswXSA9PT0gIkVWRU5UIiAmJiBkYXRhWzFdID09PSAiZmlsZWlkcyIpewogICAgICAgICAgZmlsZWlkcy5wdXNoKC4uLkpTT04ucGFyc2UoZGF0YVsyXS5jb250ZW50KS5maWxlaWRzKQogICAgICAgICAgc29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkoWyJSRVEiLCAicGFydHMiLCB7ImlkcyI6IGZpbGVpZHMsICJsaW1pdCI6IDMwMDB9XSkpCiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoZGF0YVswXSA9PT0gIkVWRU5UIiAmJiBkYXRhWzFdID09PSAicGFydHMiKXsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gZGF0YVsyXS5jb250ZW50Lm1hdGNoKC9ecGFydChcZHsxLDR9KTsoXGR7MSw0fSk7W2EtejAtOV0rOy8pCgogICAgICAgICAgaWYobWF0Y2gpewogICAgICAgICAgICBjb25zdCBwYXJ0X2RhdGEgPSBkYXRhWzJdLmNvbnRlbnQuc3Vic3RyKG1hdGNoWzBdLmxlbmd0aCkKICAgICAgICAgICAgZmlsZV9kYXRhLnB1c2goW3BhcnNlSW50KG1hdGNoWzFdLCAxMCksIHBhcnRfZGF0YV0pCiAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgZmlsZV9kYXRhLnB1c2goWzEsIGRhdGFbMl0uY29udGVudF0pCiAgICAgICAgICB9CgogICAgICAgICAgaWYoZmlsZV9kYXRhLmxlbmd0aCA9PT0gZmlsZWlkcy5sZW5ndGgpewogICAgICAgICAgICBmaWxlX2RhdGEgPSBmaWxlX2RhdGEuc29ydCgoYSwgYikgPT4gYVswXSAtIGJbMF0pLm1hcChlID0+IGVbMV0pCiAgICAgICAgICAgIGNvbnN0IGRhdGF1cmkgPSAiZGF0YToiICsgZmlsZV9kYXRhLmpvaW4oIiIpCiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCAoYXdhaXQgZmV0Y2goZGF0YXVyaSkpLmJsb2IoKQogICAgICAgICAgICByZXNvbHZlKGJsb2IpCiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9KQogIH0KCiAgY29uc3Qgd29ya2VyX3NvdXJjZSA9IGF3YWl0IGRnZXQoImZlZWNlYTAxZmU2ZDkyMGU5ZjU2M2U5OWU1MjdhMmE1MjVlODQwOTUyN2ViMjc3Yzk0ZDJlOTA3MzRkYzRjNTAiLCAid3NzOi8vbm9zLmxvbCIpCiAgY29uc3Qgd29ya2VyXzU5Ml91cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGF3YWl0IGRnZXQoImZlMGVhNjA2ODBiMTYwYjYyN2M0YmYzNThlMDk1YWZhMTcxNWJhMTlhNWI5YzkwOTYzMGQ1MmQzZTQzMjQ3MmMiLCAid3NzOi8vbm9zLmxvbCIpKQogIGNvbnN0IGljb25fcG5nX3VybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYXdhaXQgZGdldCgiMDVkZTM0ZWE5MDkyMmVlOTQxMDUzYzQzYjUwMGRhYTE0ODRlMWY3MzM2M2ZjNWRhNzIyMzRiNDAzYjk3NzM3OCIsICJ3c3M6Ly9ub3MubG9sIikpCiAgY29uc3QgbWFpbl9qc19tYXBfdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChhd2FpdCBkZ2V0KCI1NWVkNDdiMjk0NzJkZTE4Y2I3MWQ0M2NjOGNmZmU3NTcwNzJmNDA3Y2ZlOGNlYjRkMDQyNDdiZGU0NDc1M2VlIiwgIndzczovL25vcy5sb2wiKSkKCiAgbGV0IHdvcmtlcl9zb3VyY2Vfc3RyID0gYXdhaXQgd29ya2VyX3NvdXJjZS50ZXh0KCkKICB3b3JrZXJfc291cmNlX3N0ciA9IHdvcmtlcl9zb3VyY2Vfc3RyLnJlcGxhY2UoJ2ltcG9ydFNjcmlwdHModC5wK3QudShyKSknLCAnaW1wb3J0U2NyaXB0cygiJyArIHdvcmtlcl81OTJfdXJsICsgJyIpJykKICBjb25zdCB3b3JrZXJfdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbd29ya2VyX3NvdXJjZV9zdHJdLCB7dHlwZTogInRleHQvamF2YXNjcmlwdCJ9KSkKCiAgY29uc3Qgb3JpZ2luYWxXb3JrZXJDb25zdHJ1Y3RvciA9IFdvcmtlcjsKCiAgV29ya2VyID0gZnVuY3Rpb24odXJsKSB7CiAgICB1cmwgPSB3b3JrZXJfdXJsCiAgICByZXR1cm4gbmV3IG9yaWdpbmFsV29ya2VyQ29uc3RydWN0b3IodXJsKTsKICB9CgogIFVSTCA9IGNsYXNzIE15VVJMIGV4dGVuZHMgVVJMIHsKICAgIGNvbnN0cnVjdG9yKGlucHV0KSB7CiAgICAgIHN1cGVyKGlucHV0LmluZGV4T2YoIi8iKSA9PT0gMCAmJiAobG9jYXRpb24ucHJvdG9jb2wgKyBsb2NhdGlvbi5wYXRobmFtZSArIGlucHV0KSB8fCBpbnB1dCk7CiAgICB9CiAgfQoKICBkYXRhTG9jYWxTdG9yYWdlID0gewogICAgZ2V0SXRlbTogZnVuY3Rpb24oKXt9LAogICAgc2V0SXRlbTogZnVuY3Rpb24oKXt9CiAgfQoKICBjb25zdCBzY3JpcHRzID0gWwogICAgIjE1NDNhMDcwYTQyZThlMGMwNTg2MTg0MGJkZTdlNWI2OTFjNGI1ZGVjNjYyNzQ1ODUyYzIyODNjZmVmZDhjYTUiCiAgXQoKICBjb25zdCBzdHlsZXMgPSBbCiAgICAiNjk5NjA3NzRjZTZkZmE4MzFhMzMwODczNDEyNWQ4MGRlMjY5YTg0ZjU5ODg4YTdkMzEyMTVlYTFhYzU1MTE1MiIKICBdCgogIGNvbnN0IHNjcmlwdF9pZCA9IHNjcmlwdHNbMF0KICBjb25zdCBzY3JpcHRfc291cmNlID0gYXdhaXQgZGdldChzY3JpcHRfaWQsICJ3c3M6Ly9ub3MubG9sIikKICBsZXQgc2NyaXB0X3NvdXJjZV9zdHIgPSBhd2FpdCBzY3JpcHRfc291cmNlLnRleHQoKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZSgiL2ljb24ucG5nIiwgaWNvbl9wbmdfdXJsKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZSgvKHNvdXJjZU1hcHBpbmdVUkw9KShtYWluXC5bYS16MC05XXs4fVwuanNcLm1hcCkvLCAiJDFodHRwOi8vbG9jYWxob3N0OjgwMDAvJDIiKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZUFsbCgibG9jYWxTdG9yYWdlIiwgImRhdGFMb2NhbFN0b3JhZ2UiKQoKICBjb25zdCBzY3JpcHRfZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKQogIHNjcmlwdF9lbC5zcmMgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtzY3JpcHRfc291cmNlX3N0cl0sIHt0eXBlOiAidGV4dC9qYXZhc2NyaXB0In0pKQogIGNvbnNvbGUubG9nKCJzY3JpcHRfZWwuc3JjIiwgc2NyaXB0X2VsLnNyYykKICBkb2N1bWVudC5ib2R5LmFwcGVuZChzY3JpcHRfZWwpCgogIGZvcihsZXQgc3R5bGVfaWQgb2Ygc3R5bGVzKXsKICAgIGNvbnN0IHN0eWxlX3NvdXJjZSA9IGF3YWl0IGRnZXQoc3R5bGVfaWQsICJ3c3M6Ly9ub3MubG9sIikKICAgIGNvbnN0IHN0eWxlX2VsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpCiAgICBzdHlsZV9lbC5yZWwgPSAic3R5bGVzaGVldCIKICAgIHN0eWxlX2VsLmhyZWYgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGF3YWl0IHN0eWxlX3NvdXJjZSkKICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kKHN0eWxlX2VsKQogIH0KfSkoKQo8L3NjcmlwdD4KPC9ib2R5PjwvaHRtbD4K

?

Reply to this note

Please Login to reply.

Discussion

Is that local?

it loads initial code from this data uri, all the rest is loaded from nostr, so it doesnt rely on any single http server.