2023-02-19 20:20:17 +05:30
|
|
|
<!DOCTYPE html>
|
|
|
|
<html data-theme="light" lang="en">
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8" />
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
|
|
<!-- Primary Meta Tags -->
|
|
|
|
<title>NBS</title>
|
|
|
|
<meta name="title" content="Nostr broadcast" />
|
|
|
|
<meta
|
|
|
|
name="description"
|
|
|
|
content="Fetch, backup and broadcast your Nostr events" />
|
|
|
|
|
|
|
|
<!-- Favicon -->
|
|
|
|
<link
|
|
|
|
rel="shortcut icon"
|
|
|
|
href="https://nostr-utils.pages.dev/img/broadcast.png"
|
|
|
|
type="image/x-icon" />
|
|
|
|
<!-- CSS -->
|
|
|
|
<link rel="stylesheet" href="style.css" />
|
|
|
|
<!-- Lightning -->
|
|
|
|
<meta name="lightning" content="bordalix@getalby.com" />
|
|
|
|
<!-- PWA -->
|
|
|
|
<meta name="theme-color" content="#ffffff" />
|
|
|
|
<link
|
|
|
|
rel="apple-touch-icon"
|
|
|
|
href="https://nostr-utils.pages.dev/img/broadcast.png" />
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
|
|
|
|
<main class="container">
|
|
|
|
<div class="header-space">
|
|
|
|
<h1>Nostr Backup Service</h1>
|
|
|
|
</div>
|
|
|
|
<h2>Share all of your events, such as notes &
|
|
|
|
lists of followers/following, with all the major
|
2023-02-19 20:37:52 +05:30
|
|
|
relays and generate a backup file that can be used
|
2023-02-19 20:20:17 +05:30
|
|
|
to restore your data to any relay of your choice.
|
|
|
|
|
|
|
|
</h2>
|
|
|
|
<div>
|
|
|
|
<form>
|
|
|
|
<div>
|
|
|
|
<form>
|
|
|
|
<div class="space-between">
|
|
|
|
<p>
|
|
|
|
<input
|
|
|
|
type="text"
|
|
|
|
id="pubkey"
|
|
|
|
name="pubkey"
|
|
|
|
onchange="pubkeyOnChange()"
|
|
|
|
placeholder="Public key (npub or hex)"
|
|
|
|
style="width: 180px"
|
|
|
|
required />
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<style>
|
|
|
|
#pubkey {
|
|
|
|
width: 600px; /* change width value */
|
|
|
|
font-size: 16px;
|
|
|
|
padding: 5px;
|
|
|
|
border: 1px solid #ccc;
|
|
|
|
border-radius: 4px;
|
|
|
|
box-sizing: border-box;
|
|
|
|
max-width: 100%;
|
|
|
|
margin: 0 auto;
|
|
|
|
display: block;
|
|
|
|
}
|
|
|
|
|
|
|
|
#pubkey::placeholder {
|
|
|
|
color: #999;
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
<button
|
|
|
|
id="fetch-and-broadcast"
|
|
|
|
onclick="fetchAndBroadcast(); return false;">
|
|
|
|
Backup & Broadcast
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
id="get-from-extension"
|
|
|
|
onclick="getFromExtension(); return false;"
|
|
|
|
style="display: none">
|
|
|
|
Get from extension
|
|
|
|
</button>
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
<div class="box">
|
|
|
|
<div class="box-content">
|
|
|
|
<p id="fetching-status"></p>
|
|
|
|
<p style="padding-top: 2px">
|
|
|
|
<progress
|
|
|
|
type="range"
|
|
|
|
id="fetching-progress"
|
|
|
|
name="fetching-progress"
|
|
|
|
min="0"
|
|
|
|
max="20"
|
|
|
|
value="0"
|
|
|
|
style="visibility: hidden" />
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div class="box-content">
|
|
|
|
<p id="file-download"></p>
|
|
|
|
<p id="events-found"></p>
|
|
|
|
</div>
|
|
|
|
<div class="box-content">
|
|
|
|
<p id="broadcasting-status"></p>
|
|
|
|
<p style="padding-top: 2px">
|
|
|
|
<progress
|
|
|
|
type="range"
|
|
|
|
id="broadcasting-progress"
|
|
|
|
name="broadcasting-progress"
|
|
|
|
min="0"
|
|
|
|
max="20"
|
|
|
|
value="0"
|
|
|
|
style="visibility: hidden" />
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<footer>
|
|
|
|
<p>Our system is currently working on implementing restoring and
|
|
|
|
automatic daily broadcasting features, which will be available soon."</p>
|
|
|
|
<p>
|
|
|
|
<a href="https://nostr-utils.pages.dev"
|
|
|
|
>learn more</a
|
|
|
|
>
|
|
|
|
</p>
|
|
|
|
</footer>
|
|
|
|
</main>
|
|
|
|
|
|
|
|
<script src="https://bundle.run/buffer@6.0.3"></script>
|
|
|
|
<script src="https://bundle.run/bech32@2.0.0"></script>
|
|
|
|
<script src="https://nostr-utils.pages.dev/js/jquery-3.6.2.min.js"></script>
|
|
|
|
<script src="https://nostr-utils.pages.dev/js/nostr-utils.js"></script>
|
|
|
|
<script src="js/relays.js"></script>
|
|
|
|
<script src="js/nostr-broadcast.js"></script>
|
|
|
|
</body>
|
|
|
|
</html>
|