78 lines
2.4 KiB
HTML
78 lines
2.4 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8"/>
|
|
<title>GreenCoast — Client</title>
|
|
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
|
<link rel="stylesheet" href="./styles.css"/>
|
|
<!-- Optional: explicit API base -->
|
|
<meta name="gc-api-base" content="https://api-gc.fullmooncyberworks.com">
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<h1>GreenCoast (Client)</h1>
|
|
|
|
<section class="card">
|
|
<h2>Connect</h2>
|
|
<div class="row">
|
|
<label>Shard URL</label>
|
|
<input id="shardUrl" placeholder="https://api-gc.fullmooncyberworks.com" />
|
|
</div>
|
|
<div class="row">
|
|
<label>Bearer (session)</label>
|
|
<input id="bearer" placeholder="(auto after sign-in)" disabled />
|
|
</div>
|
|
<div class="row">
|
|
<label>Passphrase (private posts)</label>
|
|
<input id="passphrase" type="password" placeholder="••••••••" />
|
|
</div>
|
|
<div class="row">
|
|
<label>3rd-party SSO</label>
|
|
<div>
|
|
<button id="discordStart">Sign in with Discord</button>
|
|
<div class="muted" id="ssoNote">
|
|
We use external providers only if you choose to. We cannot vouch for their security.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="actions">
|
|
<button id="saveConn">Save</button>
|
|
<button id="keySignIn">Sign in (device key)</button>
|
|
<button id="panicWipe" class="danger">Panic wipe</button>
|
|
</div>
|
|
<div id="health" class="muted"></div>
|
|
</section>
|
|
|
|
<section class="card">
|
|
<h2>Compose</h2>
|
|
<div class="row">
|
|
<label>Visibility</label>
|
|
<select id="visibility">
|
|
<option value="private">Private (E2EE via passphrase)</option>
|
|
<option value="public">Public (plaintext)</option>
|
|
</select>
|
|
</div>
|
|
<div class="row">
|
|
<label>Title</label>
|
|
<input id="title" placeholder="Optional title"/>
|
|
</div>
|
|
<div class="row">
|
|
<label>Body</label>
|
|
<textarea id="body" rows="6" placeholder="Write your post..."></textarea>
|
|
</div>
|
|
<div class="actions">
|
|
<button id="publish">Publish</button>
|
|
</div>
|
|
<div id="publishStatus" class="muted"></div>
|
|
</section>
|
|
|
|
<section class="card">
|
|
<h2>Posts (live index)</h2>
|
|
<div id="posts"></div>
|
|
</section>
|
|
</div>
|
|
|
|
<script type="module" src="./app.js"></script>
|
|
</body>
|
|
</html>
|