- NIP-46 remote signer in the page (bunker:// and nostrconnect:// pairing) - Chrome extension (NIP-07) with per-site permission prompts, unlocked by the site via externally_connectable; downloadable from the page - Passkey (WebAuthn PRF) encryption of the Drive key file - NIP-49 backups: download or save to Drive; reveal nsec - Fix: oldest key file wins when two devices sign up at once - Fix: never overwrite an existing kind-0 because a relay was slow - Fix: EOSE tracking; relays reconnect with backoff; verify event signatures - One-click re-sign-in (consent only the first time) - Vendored, pinned nostr-tools; CSP; no third-party scripts but Google's Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
961 B
JavaScript
25 lines
961 B
JavaScript
// Goostr config. Edit this file with your Google OAuth client ID before
|
|
// running the app. See README.md for how to get one.
|
|
//
|
|
// Format: "1234567890-abcdef.apps.googleusercontent.com"
|
|
export const CLIENT_ID = "114166903886-pd1lb3k10o66qacn10smdnd63k64vont.apps.googleusercontent.com";
|
|
|
|
// Public nostr relays to publish to and read from.
|
|
export const RELAYS = [
|
|
"wss://relay.damus.io",
|
|
"wss://nos.lol",
|
|
"wss://relay.primal.net",
|
|
"wss://relay.snort.social",
|
|
"wss://nostr.wine",
|
|
"wss://offchain.pub",
|
|
"wss://relay.nostr.band",
|
|
"wss://nostr.mom",
|
|
];
|
|
|
|
// The Goostr browser extension (NIP-07 signer). The ID is fixed by the "key"
|
|
// in extension/manifest.json, so it's the same for every unpacked install.
|
|
export const EXTENSION_ID = "bglfppdpknmhpnjjegkdncgeaaadmeic";
|
|
// Chrome Web Store link once the extension is published. Empty = offer the
|
|
// .zip download with "Load unpacked" instructions instead.
|
|
export const EXTENSION_STORE_URL = "";
|