johnandersen777.bsky.social/atlibs-fedproxy
fedproxy and ingress modules for atlibs: SSH public keys on your PDS, did:key ingress; pages and web tiles
0
0
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<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>
article { max-width: 100%; }
.mono { font-family: monospace; overflow-wrap: anywhere; }
#log { list-style: none; padding-left: 0; }
#log li { list-style: none; }
</style>
<title>atlibs ingress</title>
<!-- atlibs/ is a symlink to javascript/src, so this directory serves on its own (python3 -m http.server). -->
<script type="importmap">
{ "imports": { "atlibs/": "./atlibs/" } }
</script>
<script type="module" src="./main.js"></script>
</head>
<body>
<main class="container">
<header>
<hgroup>
<h1>ingress</h1>
<p>This tab serves the ingress wasm module at a public did:key host on xrpc.fedproxy.com. The key lives in this browser.</p>
</hgroup>
</header>
<article>
<dl class="mono">
<dt>did</dt><dd id="did">...</dd>
<dt>public URL</dt><dd><a id="url" target="_blank" rel="noopener">...</a></dd>
<dt>status</dt><dd id="status">loading</dd>
<dt>served / relay drops</dt><dd><span id="served">0</span> / <span id="drops">0</span></dd>
</dl>
<p id="error" style="color: #E37474;"></p>
<form id="serve-form">
<div class="grid">
<label>Requests to serve <input name="maxRequests" inputmode="numeric" placeholder="unlimited"></label>
<label>Lifetime (ms) <input name="lifetimeMs" inputmode="numeric" placeholder="until stopped"></label>
<label>Quiet (ms) <input name="quietMs" inputmode="numeric" placeholder="0: answer keepalives"></label>
</div>
<small>Quiet leaves the relay's keepalives unanswered on the first connection, so the relay evicts this tab after 90 s and the module re-registers.</small>
<div class="grid">
<button id="start">Serve</button>
<button id="stop" type="button" class="secondary">Stop</button>
</div>
</form>
</article>
<article>
<h4>Events</h4>
<ul id="log" class="mono"></ul>
</article>
</main>
</body>
</html>