summaryrefslogtreecommitdiffstats
path: root/static/index.html
diff options
context:
space:
mode:
authorGab Virebent <gabriel1@virebent.art>2026-06-20 01:07:45 +0000
committerGab Virebent <gabriel1@virebent.art>2026-06-20 01:07:45 +0000
commitaa459e3b84cc4c5d908f3781c9253848c18640c3 (patch)
tree8454b956cc0fa027034c8291f39d58ece469e10c /static/index.html
downloadnymdrop-aa459e3b84cc4c5d908f3781c9253848c18640c3.tar.gz
nymdrop-aa459e3b84cc4c5d908f3781c9253848c18640c3.tar.xz
nymdrop-aa459e3b84cc4c5d908f3781c9253848c18640c3.zip
Initial public release: Nym-native anonymous submission system
End-to-end verified pipeline (browser -> HTTP relay -> Nym mixnet -> reader). Client-side X25519+HKDF+AES-GCM-256, no-log blind relay, AGPL-3.0.
Diffstat (limited to 'static/index.html')
-rw-r--r--static/index.html61
1 files changed, 61 insertions, 0 deletions
diff --git a/static/index.html b/static/index.html
new file mode 100644
index 0000000..c957a01
--- /dev/null
+++ b/static/index.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="referrer" content="no-referrer">
+ <title>NymDrop — Secure Submission</title>
+ <link rel="stylesheet" href="/style.css">
+</head>
+<body>
+<div class="card">
+
+ <div class="logo">
+ <div class="logo-icon">⬡</div>
+ <h1>NYMDROP</h1>
+ </div>
+ <p class="tagline">Anonymous document submission — encrypted in your browser, delivered over Nym mixnet.</p>
+
+ <div class="badges">
+ <span class="badge badge-green">END-TO-END ENCRYPTED</span>
+ <span class="badge badge-blue">NYM MIXNET</span>
+ <span class="badge badge-gray">NO LOGS</span>
+ <span class="badge badge-gray">NO METADATA</span>
+ </div>
+
+ <form id="drop-form">
+ <label for="message">Message</label>
+ <textarea id="message" placeholder="Write your message here. It will be encrypted before leaving your browser."></textarea>
+
+ <div class="file-section">
+ <label>Attachment (optional)</label>
+ <label class="file-label" for="file">&#128206; Choose file</label>
+ <input type="file" id="file">
+ <span id="filename"></span>
+ </div>
+
+ <button type="submit" class="submit-btn">&#128274; Submit securely</button>
+ </form>
+
+ <div id="status"></div>
+
+ <hr class="divider">
+
+ <p class="notice">
+ <span>Your submission is encrypted in this browser before being sent.</span>
+ The server never sees the content and retains no logs.
+ Once delivered over the Nym mixnet, no record of this submission exists on this server.
+ For maximum anonymity, submit from a public network.
+ </p>
+
+</div>
+<div class="footer">NYMDROP &nbsp;·&nbsp; ZERO KNOWLEDGE &nbsp;·&nbsp; ZERO LOGS</div>
+<script src="/crypto.js"></script>
+<script>
+ document.getElementById('file').addEventListener('change', function() {
+ const name = this.files.length ? this.files[0].name : '';
+ document.getElementById('filename').textContent = name;
+ });
+</script>
+</body>
+</html>