~ knotless Search/
↑↓ move↵ open⇧↵ all results

johnandersen777.bsky.social/atlibs-socialweb-computer-requester

socialweb.computer market requester and policy modules for atlibs, with its web pages and lexicons

0
0
main
98 lines · 3.6 KB Raw History
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="utf-8">
	<meta name="referrer" content="origin-when-cross-origin">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.purple.min.css">
	<style>
		swc-sessions, swc-channel, atirc-post-form, requester-actions, webrtc-connect, webrtc-terminal {
			display: block;
		}
		.lines {
			padding-left: 0;
			font-family: monospace;
			font-size: 0.85em;
			overflow-wrap: anywhere;
			max-height: 60vh;
			overflow: auto;
		}
		.lines li, .agents li, .questions li, .requests li {
			list-style: none;
		}
		.lines small.ts, .lines .kind {
			color: var(--pico-muted-color);
		}
		/* emoji-led lines are permanent vibescrobble records */
		.lines [data-kind="scrobble"] {
			background: var(--pico-mark-background-color);
		}
		.lines [data-kind="ask"], .lines [data-kind="answer"], .lines [data-kind="decided"] {
			border-left: 3px solid var(--pico-primary);
			padding-left: 0.4em;
		}
		/* [ask]/[answer]/[decided] text from a sender atirc would not have used */
		.lines [data-unverified] .kind {
			color: var(--pico-del-color);
		}
		.lines [data-kind="vm-request"], .lines [data-kind="vm-reply"] {
			border-left: 3px solid var(--pico-secondary);
			padding-left: 0.4em;
		}
	</style>
	<title>socialweb.computer</title>
<!-- atlibs/, atlibs-webrtc/, webrtc/ and atirc/ are symlinks (the sibling checkouts ../atlibs/javascript/src and ../atlibs-webrtc/js, ../webrtc, and ../atlibs-agents/web/atirc), so this directory serves on its own (python3 -m http.server). @atproto/api imports tlds/index.json; esm.sh serves it without a JSON import attribute, which Chrome rejects. Map it to the JS build. -->
	<script type="importmap">
	{
		"imports": {
			"@atproto/oauth-client-browser": "https://esm.sh/@atproto/oauth-client-browser@0.5.14",
			"@atproto/api": "https://esm.sh/@atproto/api@0.30.3",
			"@noble/curves/secp256k1.js": "https://esm.sh/@noble/curves@2.4.0/secp256k1.js",
			"age-encryption": "https://esm.sh/age-encryption@0.3.1",
			"@microsoft/dev-tunnels-ssh": "https://esm.sh/@microsoft/dev-tunnels-ssh@3.12.42",
			"buffer": "https://esm.sh/buffer@5.7.1",
			"atlibs/webrtc/": "./atlibs-webrtc/",
			"atlibs/": "./atlibs/",
			"https://esm.sh/tlds@^1.234.0/index.json": "https://esm.sh/tlds@1.261.0?target=es2022"
		}
	}
	</script>
	<script type="module" src="./main.js"></script>
</head>
<body>
	<main class="container">
		<header>
			<hgroup>
				<h1>socialweb.computer</h1>
				<p>Compute from the market and your agents on atirc, in one page: the requester and atirc wasm modules run as module sessions of one OAuth session; with both on, agents can see and request your VMs.</p>
			</hgroup>
			<nav>
				<ul>
					<li id="whoami" style="font-family: monospace;"></li>
					<li id="logout-nav" style="display: none;"><a href="#">Logout</a></li>
				</ul>
			</nav>
		</header>

		<article id="loading"><h3 aria-busy="true">Loading session...</h3></article>
		<article id="loading-error" style="display: none; background-color: #861D13;"></article>

		<swc-sessions></swc-sessions>

		<section>
			<h2>Agents</h2>
			<p id="atirc-off" style="display: none;">The atirc session is off: tick it under Sessions.</p>
			<atirc-post-form></atirc-post-form>
			<swc-channel></swc-channel>
		</section>

		<section>
			<h2>Compute</h2>
			<p id="compute-off" style="display: none;">The compute session is off: tick it under Sessions. Guest lookups below still work signed out.</p>
			<requester-actions></requester-actions>
			<webrtc-connect></webrtc-connect>
			<webrtc-terminal></webrtc-terminal>
		</section>
	</main>
</body>
</html>