diff options
| author | Adam Soltys <[email protected]> | 2026-06-24 08:46:57 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-24 08:46:57 -0700 |
| commit | f59cca61111f38963099190bdbbce9a76bc3fafe (patch) | |
| tree | 68a25a18772e4fa40e98918bff692eb836c46c4f | |
| parent | f2f195f4e1752a73bd9f7cf69758444e85de4daa (diff) | |
| download | coinosv3-f59cca61111f38963099190bdbbce9a76bc3fafe.tar.gz coinosv3-f59cca61111f38963099190bdbbce9a76bc3fafe.zip | |
Update README for Hal Wallet; fill in all translations
- Rewrite README: Hal Wallet name, halwallet.app, configurable explorer,
QR scanner, optional/configurable Nostr sync, PWA, updated layout and
reconcile/security notes.
- Translate the ~31 UI keys added this cycle (explorer, device sync, QR
scanner, How it works, install, etc.) into all 19 languages. Brand and
technical tokens (Hal Wallet, Hal Finney, mempool.space, BIP39/BIP84,
Sparrow/Electrum, Nostr, URLs) kept literal so linkify still matches;
appTitle stays "Hal Wallet" via English fallback.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
| -rw-r--r-- | README.md | 86 | ||||
| -rw-r--r-- | src/i18n.js | 589 |
2 files changed, 641 insertions, 34 deletions
@@ -1,38 +1,48 @@ -# Bitcoin Wallet +# Hal Wallet A self-contained, **single-file** Bitcoin wallet that runs entirely in the -browser — think bitaddress.org, but a modern BIP84 HD wallet from a seed -phrase that scans history, watches for payments in real time, and spends. +browser — think bitaddress.org, but a modern BIP84 HD wallet from a seed phrase +that scans history, watches for payments, and spends. The whole wallet is one +static `index.html` you can save and run offline, forever. -Live at **https://bitcoin.coinos.io** (and the built `index.html` runs offline -straight from the filesystem). +Live at **https://halwallet.app** (the built `index.html` also runs straight +from the filesystem with no server). + +The name is a nod to [Hal Finney](https://en.wikipedia.org/wiki/Hal_Finney_(computer_scientist)). ## Features -- **BIP84 / native SegWit (p2wpkh)** HD wallet from a 12/24-word BIP39 seed - (optional passphrase). Mainnet. +- **BIP84 / native SegWit (p2wpkh)** HD wallet from a 12-word BIP39 seed + (imports any valid BIP39 phrase; optional passphrase). Mainnet. - **One fresh address at a time** — a new receive address is only handed out after the current one is paid, so used addresses stay contiguous and scans stay tiny (no 20-address gap probing). -- **Real-time** via the mempool.space WebSocket: an incoming payment shows a - "Payment received!" screen the moment it hits the mempool, then reveals the - next address. A ping/pong heartbeat keeps the socket alive (auto-reconnect on +- **Choose your own block explorer** — mempool.space by default (with + blockstream.info as a silent failover), blockstream.info only, or a **custom + Esplora / electrs REST URL** (e.g. your own node) in Settings. +- **Real-time** via the mempool.space WebSocket (when that explorer is + selected): an incoming payment shows a "Payment received!" screen the moment + it hits the mempool. Other explorers fall back to polling plus a periodic full + reconcile. A ping/pong heartbeat keeps the socket alive (auto-reconnect on drop, sleep, or network change). - **Spending** with proper coin selection + fee estimation (`@scure/btc-signer` `selectUTXO`), multiple recipients, a fee-rate picker, send-max, and manual coin control. -- **Encrypted cross-device sync over Nostr** — wallet state is NIP-44-encrypted - to yourself and stored as a replaceable event (kind 30078) on - relay.coinos.io. The Nostr identity is derived from the same seed (NIP-06), - so opening the wallet on another device restores state with no rescan. -- **Offline signing** — export a keyless JSON snapshot of your coins on an - online device, import it on an offline one, sign locally, and export the - signed transaction (hex / file / QR) to broadcast elsewhere. +- **QR scanner** on the send page — scan a Bitcoin address, a BIP21 URI (fills + the amount too), or a signed transaction to broadcast it. Uses the native + `BarcodeDetector` where available and lazy-loads jsQR otherwise. +- **Optional encrypted cross-device sync over Nostr** — wallet state is + NIP-44-encrypted to yourself and stored as a replaceable event (kind 30078) on + the relay(s) you choose (default relay.coinos.io). The Nostr identity is + derived from the same seed (NIP-06). On by default, toggled off in Settings. +- **Offline / air-gapped signing** — export a keyless JSON snapshot of your + coins on an online device, import it on an offline one, sign locally, and + export the signed transaction (hex / file / QR) to broadcast elsewhere. You + can also sign-and-export online (broadcast from another device). +- **Installable PWA** — installs to your home screen and works offline once + installed (the app shell, icons, and QR decoder are precached). - **Global sats/BTC toggle** (defaults to sats) — every amount label is clickable to switch, persisted across sessions. -- **Resilient explorer access** — mempool.space + Blockstream with a global - request throttle, per-host cooldown on 429s, request timeouts with failover, - and a localStorage cache so reloads are instant. Built with the audited [`@scure`](https://github.com/paulmillr/scure-btc-signer) / [`@noble`](https://github.com/paulmillr/noble-hashes) libraries plus @@ -51,12 +61,14 @@ bun run dev # http://localhost:5173 (rebuilds on each refresh) ## Build ```bash -bun run build # → dist/index.html (one self-contained file) +bun run build # → dist/ (index.html + PWA sidecars) ``` -`dist/index.html` inlines all code, the crypto/QR/Nostr libraries, and the CSS. -Save that one file and open it directly in a browser — no server, no internet -needed (network features simply stay idle until you're online). +`dist/index.html` inlines all code, the crypto/QR/Nostr libraries, and the CSS — +save that one file and open it directly in a browser, no server or internet +needed. The build also emits PWA extras (`manifest.webmanifest`, `sw.js`, +icons, and a lazy-loaded `jsqr.js`) for the hosted site; they're optional and +simply 404 when `index.html` is opened on its own. ## How state is kept @@ -66,12 +78,12 @@ Three layers, fastest first: logout / tab close). 2. **localStorage** — caches scanned state (addresses, UTXOs, history) keyed by a hash of the seed, so a reload shows balances instantly. -3. **Nostr** — encrypted, replaceable cross-device state on relay.coinos.io. +3. **Nostr** — encrypted, replaceable cross-device state on your configured + relay(s) (when sync is enabled). -Idle polling only ever re-checks the fresh receive/change address; already- -scanned coin addresses are never re-polled (spends come over the WebSocket / -post-send refresh / Nostr). A manual **Settings → Rescan** covers anything -missed (e.g. a payment to a reused old address). +On load and on a 2-minute timer the wallet does a full reconcile; between those, +a light poll re-checks the fresh frontier and the addresses currently holding +coins. A manual **Settings → Rescan** forces a full re-scan on demand. ## Offline / air-gapped spending @@ -88,20 +100,26 @@ missed (e.g. a payment to a reused old address). | File | Purpose | | --- | --- | | `src/wallet.js` | BIP84 derivation, scanning, coin selection, signing, realtime, cache, sync | -| `src/api.js` | Esplora wrapper (mempool.space + Blockstream) with throttle/cooldown/timeout | -| `src/nostr.js` | Encrypted cross-device state sync over Nostr | +| `src/api.js` | Esplora wrapper + explorer selection (mempool / blockstream / custom) with throttle/cooldown/timeout | +| `src/nostr.js` | Optional encrypted cross-device state sync over Nostr (configurable relays) | +| `src/scan.js` | Camera QR scanner (native BarcodeDetector / lazy jsQR) | | `src/app.js` | UI controller (vanilla DOM) | | `src/qr.js` | QR → SVG (zero-dep) | | `src/format.js` | sat/BTC formatting helpers | +| `src/i18n.js` | UI strings + translations | | `src/style.css` | Hand-rolled styles | -| `build.js` / `dev.js` | Bun bundler → single inlined `index.html`, and dev server | +| `build.js` / `dev.js` | Bun bundler → inlined `index.html` + PWA sidecars, and dev server | ## Security notes - Self-custody software handling real keys — review the code before trusting it - with funds, and prefer an offline machine for the seed phrase. + with funds, and prefer an offline machine for the seed phrase. It's a hot + wallet (keys live in the browser); for large amounts use a hardware signer or + run this air-gapped on a dedicated offline device. - The seed/passphrase live in memory while the page is open and in sessionStorage for the tab session; locking or closing the tab clears them. - The localStorage cache and the Nostr event hold public chain data (addresses, UTXOs, amounts); the Nostr copy is encrypted and keyed to your seed-derived - identity, but the relay can see that an identity is publishing app data. + identity, but a relay can see that an identity is publishing app data. +- Whichever block explorer you query sees your addresses and IP — point it at + your own node for full privacy. diff --git a/src/i18n.js b/src/i18n.js index a6c16a1..dbd878a 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -185,6 +185,37 @@ function def(code, map) { } def('es', { + passphrase: "Frase de contraseña", + howItWorks: "Cómo funciona", + installApp: "Instalar app", + hiwBasicsTitle: "Lo básico", + hiwBasics1: "Cuando creas una billetera, la página genera doce palabras al azar. Esas palabras son la clave de tu billetera. Cualquiera que las tenga puede gastar las monedas, así que anótalas en papel y guárdalas en un lugar al que solo tú puedas acceder.", + hiwBasics2: "Si pierdes las doce palabras y no tienes una copia de seguridad, las monedas se pierden para siempre. No hay enlace para restablecer ni nadie a quien llamar, así que respáldalas antes de poner dinero.", + hiwBasics3: "No hay servidor ni cuenta. Toda la app es una única página que se ejecuta en tu navegador, así que nadie custodia tus monedas y ningún servidor ve jamás tus claves. Para mostrar tu saldo e historial, lee desde un explorador de bloques público (mempool.space por defecto, o tu propio nodo si configuras uno en Ajustes).", + hiwBasics4: "Incluso puedes guardar esta página y abrirla directamente desde tu computadora sin conexión a internet. Sigue funcionando sin conexión.", + hiwBasics5: "Sigue los estándares habituales de Bitcoin (una frase BIP39 de 12 palabras y claves SegWit nativas BIP84), así que si este sitio desapareciera algún día, puedes restaurar la misma frase en Sparrow, Electrum o cualquier otra billetera estándar y tus monedas estarán justo ahí.", + hiwTribute: "El nombre Hal Wallet es un homenaje al legendario cypherpunk y pionero de Bitcoin, Hal Finney (1956–2014).", + signExport: "Firmar y (transmitir en otro lugar)", + scanQr: "Escanear QR", + scanHint: "Apunta la cámara a un código QR", + scanNoCamera: "No se pudo acceder a la cámara.", + scanNoDecoder: "El escaneo de QR necesita conexión la primera vez que se usa.", + scanUnrecognized: "No se pudo leer una dirección de Bitcoin de ese QR.", + broadcastScanned: "¿Transmitir la transacción?", + broadcastNow: "Transmitir", + scanOffline: "Estás sin conexión — vuelve a conectarte para transmitir esta transacción.", + loadingHistory: "Cargando transacciones…", + explorer: "Explorador de bloques", + explorerDesc: "El servidor que esta billetera consulta para saldos e historial. Apúntalo a tu propio nodo para máxima privacidad.", + explorerUrl: "URL del servidor", + explorerUrlHint: "Base REST de Esplora / electrs, p. ej. https://mempool.space/api", + deviceSync: "Sincronización de dispositivos", + deviceSyncDesc: "Mantén esta billetera sincronizada entre tus dispositivos guardando una copia cifrada en un relay de Nostr — solo un dispositivo con tu semilla puede leerla. Desactívala para mantener todo en este dispositivo.", + syncAcross: "Sincronizar entre dispositivos", + syncOn: "Activado", + syncOff: "Desactivado", + relaysLabel: "Relays", + relaysHint: "Una URL wss:// por línea.", home: 'Inicio', logout: 'Cerrar sesión', createNew: 'Crear nuevo', importExisting: 'Importar existente', genIntro: 'Genera una nueva frase semilla de 12 palabras. Anótala. Es la única forma de recuperar este monedero.', @@ -231,6 +262,37 @@ def('es', { }); def('fr', { + passphrase: "Phrase secrète", + howItWorks: "Comment ça marche", + installApp: "Installer l’application", + hiwBasicsTitle: "Les bases", + hiwBasics1: "Quand vous créez un portefeuille, la page génère douze mots aléatoires. Ces mots sont la clé de votre portefeuille. Quiconque les possède peut dépenser les fonds, alors notez-les sur papier et gardez-les dans un endroit auquel vous seul avez accès.", + hiwBasics2: "Si vous perdez les douze mots et n’avez pas de sauvegarde, les fonds sont perdus à jamais. Il n’y a aucun lien de réinitialisation ni personne à appeler, alors sauvegardez-les avant d’y déposer de l’argent.", + hiwBasics3: "Il n’y a ni serveur ni compte. Toute l’application tient sur une seule page qui s’exécute dans votre navigateur : personne ne détient vos fonds et aucun serveur ne voit jamais vos clés. Pour afficher votre solde et votre historique, elle interroge un explorateur de blocs public (mempool.space par défaut, ou votre propre nœud si vous en configurez un dans les Réglages).", + hiwBasics4: "Vous pouvez même enregistrer cette page et l’ouvrir directement depuis votre ordinateur sans aucune connexion Internet. Elle continue de fonctionner hors ligne.", + hiwBasics5: "Elle respecte les standards habituels de Bitcoin (une phrase BIP39 de 12 mots et des clés SegWit natives BIP84), donc si ce site venait à disparaître, vous pourriez restaurer la même phrase dans Sparrow, Electrum ou tout autre portefeuille standard, et vos fonds y seraient.", + hiwTribute: "Le nom Hal Wallet est un hommage au légendaire cypherpunk et pionnier de Bitcoin, Hal Finney (1956–2014).", + signExport: "Signer et (diffuser ailleurs)", + scanQr: "Scanner un QR", + scanHint: "Pointez la caméra vers un code QR", + scanNoCamera: "Impossible d’accéder à la caméra.", + scanNoDecoder: "Le scan de QR nécessite une connexion lors de sa première utilisation.", + scanUnrecognized: "Impossible de lire une adresse Bitcoin dans ce QR.", + broadcastScanned: "Diffuser la transaction ?", + broadcastNow: "Diffuser", + scanOffline: "Vous êtes hors ligne — reconnectez-vous pour diffuser cette transaction.", + loadingHistory: "Chargement des transactions…", + explorer: "Explorateur de blocs", + explorerDesc: "Le serveur que ce portefeuille interroge pour les soldes et l’historique. Pointez-le vers votre propre nœud pour une confidentialité maximale.", + explorerUrl: "URL du serveur", + explorerUrlHint: "Base REST Esplora / electrs, par ex. https://mempool.space/api", + deviceSync: "Synchronisation des appareils", + deviceSyncDesc: "Gardez ce portefeuille synchronisé entre vos appareils en stockant une copie chiffrée sur un relais Nostr — seul un appareil possédant votre seed peut la lire. Désactivez l’option pour tout conserver sur cet appareil.", + syncAcross: "Synchroniser entre les appareils", + syncOn: "Activé", + syncOff: "Désactivé", + relaysLabel: "Relais", + relaysHint: "Une URL wss:// par ligne.", home: 'Accueil', logout: 'Déconnexion', createNew: 'Créer', importExisting: 'Importer', genIntro: 'Générez une nouvelle phrase de 12 mots. Notez-la. C’est le seul moyen de récupérer ce portefeuille.', @@ -276,6 +338,37 @@ def('fr', { }); def('de', { + passphrase: "Passphrase", + howItWorks: "So funktioniert es", + installApp: "App installieren", + hiwBasicsTitle: "Die Grundlagen", + hiwBasics1: "Wenn du eine Wallet erstellst, erzeugt die Seite zwölf zufällige Wörter. Diese Wörter sind der Schlüssel zu deiner Wallet. Wer sie besitzt, kann die Coins ausgeben. Schreibe sie deshalb auf Papier und bewahre sie an einem Ort auf, zu dem nur du Zugang hast.", + hiwBasics2: "Wenn du die zwölf Wörter verlierst und kein Backup hast, sind die Coins endgültig verloren. Es gibt keinen Zurücksetzen-Link und niemanden, den du anrufen kannst. Sichere sie daher, bevor du Geld einzahlst.", + hiwBasics3: "Es gibt keinen Server und kein Konto. Die gesamte App ist eine einzige Seite, die in deinem Browser läuft. Niemand verwahrt deine Coins und kein Server bekommt jemals deine Schlüssel zu sehen. Um deinen Kontostand und deinen Verlauf anzuzeigen, liest sie von einem öffentlichen Block-Explorer (standardmäßig mempool.space oder deinem eigenen Node, falls du in den Einstellungen einen festlegst).", + hiwBasics4: "Du kannst diese Seite sogar speichern und ganz ohne Internet direkt von deinem Computer aus öffnen. Sie funktioniert auch offline weiter.", + hiwBasics5: "Sie folgt den üblichen Bitcoin-Standards (eine 12-Wörter-Phrase nach BIP39 und native SegWit-Schlüssel nach BIP84). Sollte diese Seite jemals verschwinden, kannst du dieselbe Phrase in Sparrow, Electrum oder einer beliebigen anderen Standard-Wallet wiederherstellen, und deine Coins sind genau dort.", + hiwTribute: "Der Name Hal Wallet ist eine Hommage an den legendären Cypherpunk und Bitcoin-Pionier Hal Finney (1956–2014).", + signExport: "Signieren & (anderswo senden)", + scanQr: "QR scannen", + scanHint: "Richte die Kamera auf einen QR-Code", + scanNoCamera: "Zugriff auf die Kamera nicht möglich.", + scanNoDecoder: "Das QR-Scannen benötigt beim ersten Mal eine Verbindung.", + scanUnrecognized: "Aus diesem QR konnte keine Bitcoin-Adresse gelesen werden.", + broadcastScanned: "Transaktion senden?", + broadcastNow: "Senden", + scanOffline: "Du bist offline — stelle die Verbindung wieder her, um diese Transaktion zu senden.", + loadingHistory: "Transaktionen werden geladen…", + explorer: "Block-Explorer", + explorerDesc: "Der Server, den diese Wallet für Kontostände und Verlauf abfragt. Richte ihn auf deinen eigenen Node aus, um maximale Privatsphäre zu erreichen.", + explorerUrl: "Server-URL", + explorerUrlHint: "Esplora-/electrs-REST-Basis, z. B. https://mempool.space/api", + deviceSync: "Geräteabgleich", + deviceSyncDesc: "Halte diese Wallet über deine Geräte hinweg synchron, indem du eine verschlüsselte Kopie auf einem Nostr-Relay speicherst — nur ein Gerät mit deinem Seed kann sie lesen. Schalte ihn aus, um alles auf diesem Gerät zu behalten.", + syncAcross: "Über Geräte synchronisieren", + syncOn: "An", + syncOff: "Aus", + relaysLabel: "Relays", + relaysHint: "Eine wss://-URL pro Zeile.", home: 'Start', logout: 'Abmelden', createNew: 'Neu erstellen', importExisting: 'Importieren', genIntro: 'Erzeuge eine neue Seed-Phrase aus 12 Wörtern. Schreibe sie auf. Sie ist die einzige Möglichkeit, dieses Wallet wiederherzustellen.', @@ -321,6 +414,37 @@ def('de', { }); def('pt', { + passphrase: "Senha", + howItWorks: "Como funciona", + installApp: "Instalar aplicativo", + hiwBasicsTitle: "O básico", + hiwBasics1: "Quando você cria uma carteira, a página gera doze palavras aleatórias. Essas palavras são a chave da sua carteira. Qualquer pessoa que as tiver pode gastar as moedas, então anote-as no papel e guarde-as em um lugar que só você possa acessar.", + hiwBasics2: "Se você perder as doze palavras e não tiver um backup, as moedas estarão perdidas para sempre. Não há link de redefinição nem ninguém para ligar, então faça o backup antes de colocar dinheiro.", + hiwBasics3: "Não há servidor nem conta. O aplicativo inteiro é uma única página que roda no seu navegador, então ninguém guarda suas moedas e nada em um servidor jamais vê suas chaves. Para mostrar seu saldo e histórico, ele consulta um explorador de blocos público (mempool.space por padrão, ou seu próprio nó, se você configurar um nas Configurações).", + hiwBasics4: "Você pode até salvar esta página e abri-la diretamente do seu computador sem internet alguma. Ela continua funcionando offline.", + hiwBasics5: "Ela segue os padrões usuais do Bitcoin (uma frase BIP39 de 12 palavras e chaves BIP84 native SegWit), então, se este site algum dia desaparecer, você pode restaurar a mesma frase no Sparrow, Electrum ou qualquer outra carteira padrão e suas moedas estarão lá.", + hiwTribute: "O nome Hal Wallet é uma homenagem ao lendário cypherpunk e pioneiro do Bitcoin, Hal Finney (1956–2014).", + signExport: "Assinar e (transmitir em outro lugar)", + scanQr: "Ler QR", + scanHint: "Aponte a câmera para um código QR", + scanNoCamera: "Não foi possível acessar a câmera.", + scanNoDecoder: "A leitura de QR precisa de conexão na primeira vez que é usada.", + scanUnrecognized: "Não foi possível ler um endereço Bitcoin desse QR.", + broadcastScanned: "Transmitir transação?", + broadcastNow: "Transmitir", + scanOffline: "Você está offline — reconecte-se para transmitir esta transação.", + loadingHistory: "Carregando transações…", + explorer: "Explorador de blocos", + explorerDesc: "O servidor que esta carteira consulta para saldos e histórico. Aponte-o para seu próprio nó para máxima privacidade.", + explorerUrl: "URL do servidor", + explorerUrlHint: "Base REST do Esplora / electrs, por exemplo https://mempool.space/api", + deviceSync: "Sincronização de dispositivos", + deviceSyncDesc: "Mantenha esta carteira sincronizada entre seus dispositivos armazenando uma cópia criptografada em um relay Nostr — somente um dispositivo com sua seed pode lê-la. Desative para manter tudo neste dispositivo.", + syncAcross: "Sincronizar entre dispositivos", + syncOn: "Ativado", + syncOff: "Desativado", + relaysLabel: "Relays", + relaysHint: "Um URL wss:// por linha.", home: 'Início', logout: 'Sair', createNew: 'Criar nova', importExisting: 'Importar existente', genIntro: 'Gere uma nova frase semente de 12 palavras. Anote-a. É a única forma de recuperar esta carteira.', @@ -366,6 +490,37 @@ def('pt', { }); def('ru', { + passphrase: "Парольная фраза", + howItWorks: "Как это работает", + installApp: "Установить приложение", + hiwBasicsTitle: "Основы", + hiwBasics1: "Когда вы создаёте кошелёк, страница генерирует двенадцать случайных слов. Эти слова — ключ к вашему кошельку. Любой, у кого они есть, может потратить монеты, поэтому запишите их на бумаге и храните там, куда можете добраться только вы.", + hiwBasics2: "Если вы потеряете двенадцать слов и у вас нет резервной копии, монеты пропадут навсегда. Нет ссылки для сброса и некому позвонить, поэтому сделайте резервную копию, прежде чем класть деньги.", + hiwBasics3: "Здесь нет сервера и нет учётной записи. Всё приложение — это одна страница, работающая в вашем браузере, поэтому никто не хранит ваши монеты и ничто на сервере никогда не видит ваши ключи. Чтобы показать баланс и историю, оно читает данные из публичного блок-эксплорера (по умолчанию mempool.space или вашего собственного узла, если вы укажете его в Настройках).", + hiwBasics4: "Вы даже можете сохранить эту страницу и открыть её прямо с компьютера вообще без интернета. Она продолжает работать офлайн.", + hiwBasics5: "Оно следует обычным стандартам Bitcoin (фраза из 12 слов BIP39 и нативные SegWit-ключи BIP84), поэтому, если этот сайт когда-нибудь исчезнет, вы сможете восстановить ту же фразу в Sparrow, Electrum или любом другом стандартном кошельке, и ваши монеты будут на месте.", + hiwTribute: "Название Hal Wallet — это дань уважения легендарному шифропанку и пионеру Bitcoin, Hal Finney (1956–2014).", + signExport: "Подписать и (передать в сеть в другом месте)", + scanQr: "Сканировать QR", + scanHint: "Наведите камеру на QR-код", + scanNoCamera: "Не удалось получить доступ к камере.", + scanNoDecoder: "Для сканирования QR при первом использовании нужно подключение.", + scanUnrecognized: "Не удалось распознать адрес Bitcoin в этом QR.", + broadcastScanned: "Передать транзакцию в сеть?", + broadcastNow: "Передать в сеть", + scanOffline: "Вы офлайн — переподключитесь, чтобы передать эту транзакцию в сеть.", + loadingHistory: "Загрузка транзакций…", + explorer: "Блок-эксплорер", + explorerDesc: "Сервер, к которому этот кошелёк обращается за балансами и историей. Укажите свой собственный узел для максимальной приватности.", + explorerUrl: "URL сервера", + explorerUrlHint: "Базовый REST-адрес Esplora / electrs, например https://mempool.space/api", + deviceSync: "Синхронизация устройств", + deviceSyncDesc: "Держите этот кошелёк синхронизированным между вашими устройствами, храня зашифрованную копию на релее Nostr — прочитать её может только устройство с вашим сидом. Отключите, чтобы хранить всё на этом устройстве.", + syncAcross: "Синхронизация между устройствами", + syncOn: "Вкл", + syncOff: "Выкл", + relaysLabel: "Релеи", + relaysHint: "Один URL wss:// на строку.", home: 'Главная', logout: 'Выйти', createNew: 'Создать', importExisting: 'Импортировать', genIntro: 'Сгенерируйте новую сид-фразу из 12 слов. Запишите её. Это единственный способ восстановить кошелёк.', @@ -411,6 +566,37 @@ def('ru', { }); def('zh', { + passphrase: "口令", + howItWorks: "工作原理", + installApp: "安装应用", + hiwBasicsTitle: "基础知识", + hiwBasics1: "创建钱包时,页面会生成十二个随机单词。这些单词就是你钱包的钥匙。任何拥有它们的人都能花掉你的币,所以请把它们抄写在纸上,妥善保存在只有你能拿到的地方。", + hiwBasics2: "如果你丢失了这十二个单词且没有备份,币就永远找不回来了。没有重置链接,也没有人可以求助,所以在存入资金前请先备份好它们。", + hiwBasics3: "这里没有服务器,也没有账户。整个应用就是一个在你浏览器中运行的单一页面,因此没有人保管你的币,服务器上也不会有任何东西看到你的密钥。为了显示你的余额和历史记录,它会从公共区块浏览器读取数据(默认使用 mempool.space,或者你在设置中配置的自己的节点)。", + hiwBasics4: "你甚至可以保存此页面,在完全没有网络的情况下直接从电脑打开它。它在离线状态下依然有效。", + hiwBasics5: "它遵循通用的比特币标准(12 个单词的 BIP39 助记词和 BIP84 原生 SegWit 密钥),所以即使本站有一天消失了,你也可以在 Sparrow、Electrum 或任何其他标准钱包中恢复同样的助记词,你的币就在那里。", + hiwTribute: "Hal Wallet 这个名字是为了致敬传奇密码朋克和比特币先驱 Hal Finney(1956–2014)。", + signExport: "签名并(在别处广播)", + scanQr: "扫描二维码", + scanHint: "将摄像头对准 QR 码", + scanNoCamera: "无法访问摄像头。", + scanNoDecoder: "QR 扫描首次使用时需要联网。", + scanUnrecognized: "无法从该 QR 码中读取比特币地址。", + broadcastScanned: "广播交易?", + broadcastNow: "广播", + scanOffline: "你已离线——请重新连接以广播此交易。", + loadingHistory: "正在加载交易…", + explorer: "区块浏览器", + explorerDesc: "本钱包用于查询余额和历史记录的服务器。将其指向你自己的节点以获得最高的隐私性。", + explorerUrl: "服务器 URL", + explorerUrlHint: "Esplora / electrs REST 基础地址,例如 https://mempool.space/api", + deviceSync: "设备同步", + deviceSyncDesc: "通过在 Nostr 中继上存储加密副本,让此钱包在你的各设备间保持同步——只有拥有你种子的设备才能读取它。关闭它可将所有内容仅保留在本设备上。", + syncAcross: "跨设备同步", + syncOn: "开", + syncOff: "关", + relaysLabel: "中继", + relaysHint: "每行一个 wss:// URL。", home: '首页', logout: '退出', createNew: '新建', importExisting: '导入已有', genIntro: '生成一组新的 12 词助记词。请抄写下来。这是恢复钱包的唯一方式。', @@ -456,6 +642,37 @@ def('zh', { }); def('ja', { + passphrase: "パスフレーズ", + howItWorks: "仕組み", + installApp: "アプリをインストール", + hiwBasicsTitle: "基本", + hiwBasics1: "ウォレットを作成すると、このページがランダムな12個の単語を生成します。これらの単語があなたのウォレットの鍵です。これを持っている人は誰でもコインを使えてしまうので、紙に書き留めて、あなただけがアクセスできる場所に保管してください。", + hiwBasics2: "12個の単語を失い、バックアップもない場合、コインは永久に取り戻せません。リセット用のリンクも連絡できる相手もいないので、お金を入れる前にバックアップしておきましょう。", + hiwBasics3: "サーバーもアカウントもありません。アプリ全体がブラウザで動作する単一のページなので、誰もあなたのコインを預かることはなく、サーバー上の何かがあなたの鍵を見ることもありません。残高と履歴を表示するために、公開ブロックエクスプローラー(既定では mempool.space、設定で指定すればご自身のノード)から読み込みます。", + hiwBasics4: "このページを保存して、インターネットがまったくない状態でもコンピューターから直接開くこともできます。オフラインでも動作し続けます。", + hiwBasics5: "通常のBitcoin標準(12語のBIP39フレーズとBIP84ネイティブSegWit鍵)に従っているので、万が一このサイトがなくなっても、同じフレーズをSparrow、Electrum、その他の標準的なウォレットで復元でき、コインはそこにそのまま残っています。", + hiwTribute: "Hal Wallet という名前は、伝説的なサイファーパンクであり Bitcoin の先駆者である Hal Finney(1956–2014)への敬意を込めたものです。", + signExport: "署名する(別の場所でブロードキャスト)", + scanQr: "QRをスキャン", + scanHint: "カメラをQRコードに向けてください", + scanNoCamera: "カメラにアクセスできませんでした。", + scanNoDecoder: "QRスキャンは初回の使用時に接続が必要です。", + scanUnrecognized: "そのQRからBitcoinアドレスを読み取れませんでした。", + broadcastScanned: "トランザクションをブロードキャストしますか?", + broadcastNow: "ブロードキャスト", + scanOffline: "オフラインです — このトランザクションをブロードキャストするには再接続してください。", + loadingHistory: "トランザクションを読み込み中…", + explorer: "ブロックエクスプローラー", + explorerDesc: "このウォレットが残高と履歴を照会するサーバーです。プライバシーを最大限に高めるには、ご自身のノードを指定してください。", + explorerUrl: "サーバーURL", + explorerUrlHint: "Esplora / electrs REST のベース。例: https://mempool.space/api", + deviceSync: "デバイス同期", + deviceSyncDesc: "暗号化したコピーを Nostr リレーに保存することで、このウォレットを複数のデバイス間で同期し続けます — シードを持つデバイスだけが読み取れます。すべてをこのデバイス内に留めておくにはオフにしてください。", + syncAcross: "デバイス間で同期", + syncOn: "オン", + syncOff: "オフ", + relaysLabel: "リレー", + relaysHint: "1行につき wss:// URL を1つ。", home: 'ホーム', logout: 'ログアウト', createNew: '新規作成', importExisting: 'インポート', genIntro: '新しい12単語のシードフレーズを生成します。書き留めてください。これがこのウォレットを復元する唯一の方法です。', @@ -501,6 +718,37 @@ def('ja', { }); def('ko', { + passphrase: "패스프레이즈", + howItWorks: "작동 방식", + installApp: "앱 설치", + hiwBasicsTitle: "기본 사항", + hiwBasics1: "지갑을 만들면 페이지에서 무작위 단어 12개가 생성됩니다. 이 단어들이 지갑의 열쇠입니다. 이를 가진 사람은 누구나 코인을 사용할 수 있으므로, 종이에 적어 본인만 접근할 수 있는 곳에 보관하세요.", + hiwBasics2: "12개의 단어를 잃어버리고 백업도 없다면 코인은 영원히 사라집니다. 재설정 링크도 없고 연락할 곳도 없으니, 돈을 넣기 전에 반드시 백업하세요.", + hiwBasics3: "서버도 계정도 없습니다. 전체 앱은 브라우저에서 실행되는 단일 페이지이므로, 아무도 코인을 보관하지 않고 서버의 어떤 것도 키를 보지 못합니다. 잔액과 내역을 표시하기 위해 공개 블록 탐색기에서 데이터를 읽어옵니다(기본값은 mempool.space, 설정에서 지정하면 본인의 노드 사용).", + hiwBasics4: "이 페이지를 저장해 인터넷 없이 컴퓨터에서 바로 열 수도 있습니다. 오프라인에서도 계속 작동합니다.", + hiwBasics5: "일반적인 비트코인 표준(12단어 BIP39 구문과 BIP84 네이티브 SegWit 키)을 따르므로, 이 사이트가 사라지더라도 Sparrow, Electrum 또는 다른 표준 지갑에서 동일한 구문으로 복원하면 코인이 그대로 있습니다.", + hiwTribute: "Hal Wallet이라는 이름은 전설적인 사이퍼펑크이자 비트코인 선구자인 Hal Finney(1956–2014)에 대한 헌사입니다.", + signExport: "서명 후 (다른 곳에서 브로드캐스트)", + scanQr: "QR 스캔", + scanHint: "카메라를 QR 코드에 맞추세요", + scanNoCamera: "카메라에 접근할 수 없습니다.", + scanNoDecoder: "QR 스캔은 처음 사용할 때 연결이 필요합니다.", + scanUnrecognized: "해당 QR에서 비트코인 주소를 읽을 수 없습니다.", + broadcastScanned: "트랜잭션을 브로드캐스트할까요?", + broadcastNow: "브로드캐스트", + scanOffline: "오프라인 상태입니다 — 이 트랜잭션을 브로드캐스트하려면 다시 연결하세요.", + loadingHistory: "트랜잭션 불러오는 중…", + explorer: "블록 탐색기", + explorerDesc: "이 지갑이 잔액과 내역을 조회하는 서버입니다. 최대한의 프라이버시를 위해 본인의 노드를 지정하세요.", + explorerUrl: "서버 URL", + explorerUrlHint: "Esplora / electrs REST 기본 주소, 예: https://mempool.space/api", + deviceSync: "기기 동기화", + deviceSyncDesc: "암호화된 사본을 Nostr 릴레이에 저장해 여러 기기에서 이 지갑을 동기화하세요 — 시드를 가진 기기만 읽을 수 있습니다. 모든 것을 이 기기에만 보관하려면 끄세요.", + syncAcross: "기기 간 동기화", + syncOn: "켜짐", + syncOff: "꺼짐", + relaysLabel: "릴레이", + relaysHint: "한 줄에 하나의 wss:// URL을 입력하세요.", home: '홈', logout: '로그아웃', createNew: '새로 만들기', importExisting: '가져오기', genIntro: '새 12단어 시드 문구를 생성합니다. 적어 두세요. 이 지갑을 복구하는 유일한 방법입니다.', @@ -546,6 +794,37 @@ def('ko', { }); def('ar', { + passphrase: "عبارة المرور", + howItWorks: "كيف يعمل", + installApp: "تثبيت التطبيق", + hiwBasicsTitle: "الأساسيات", + hiwBasics1: "عند إنشاء محفظة، تُولّد الصفحة اثنتي عشرة كلمة عشوائية. هذه الكلمات هي مفتاح محفظتك. أي شخص يمتلكها يمكنه إنفاق العملات، لذا دوّنها على ورقة واحفظها في مكان لا يصل إليه سواك.", + hiwBasics2: "إذا فقدت الكلمات الاثنتي عشرة ولم يكن لديك نسخة احتياطية، فستضيع العملات إلى الأبد. لا يوجد رابط لإعادة التعيين ولا أحد للاتصال به، لذا احتفظ بنسخة احتياطية قبل إيداع أي أموال.", + hiwBasics3: "لا يوجد خادم ولا حساب. التطبيق بأكمله صفحة واحدة تعمل في متصفحك، فلا أحد يحتفظ بعملاتك ولا شيء على خادم يرى مفاتيحك أبداً. ولعرض رصيدك وسجلك يقرأ من مستكشف كتل عام (mempool.space افتراضياً، أو عقدتك الخاصة إن أعددت واحدة في الإعدادات).", + hiwBasics4: "بل يمكنك حفظ هذه الصفحة وفتحها مباشرة من حاسوبك بدون أي اتصال بالإنترنت. تظل تعمل دون اتصال.", + hiwBasics5: "يتبع معايير بيتكوين المعتادة (عبارة BIP39 من 12 كلمة ومفاتيح BIP84 SegWit الأصلية)، لذا إن اختفى هذا الموقع يوماً يمكنك استعادة العبارة نفسها في Sparrow أو Electrum أو أي محفظة قياسية أخرى وستجد عملاتك هناك.", + hiwTribute: "الاسم Hal Wallet هو تكريم لرائد بيتكوين والسايفربانك الأسطوري، Hal Finney (1956–2014).", + signExport: "توقيع و(بثّ في مكان آخر)", + scanQr: "مسح رمز QR", + scanHint: "وجّه الكاميرا نحو رمز QR", + scanNoCamera: "تعذّر الوصول إلى الكاميرا.", + scanNoDecoder: "يحتاج مسح QR إلى اتصال في المرة الأولى لاستخدامه.", + scanUnrecognized: "تعذّرت قراءة عنوان بيتكوين من رمز QR هذا.", + broadcastScanned: "بثّ المعاملة؟", + broadcastNow: "بثّ", + scanOffline: "أنت غير متصل — أعد الاتصال لبثّ هذه المعاملة.", + loadingHistory: "جارٍ تحميل المعاملات…", + explorer: "مستكشف الكتل", + explorerDesc: "الخادم الذي تستعلم منه هذه المحفظة عن الأرصدة والسجل. وجّهه إلى عقدتك الخاصة لأقصى قدر من الخصوصية.", + explorerUrl: "عنوان الخادم", + explorerUrlHint: "قاعدة REST لـ Esplora / electrs، مثلاً https://mempool.space/api", + deviceSync: "مزامنة الأجهزة", + deviceSyncDesc: "حافظ على تزامن هذه المحفظة عبر أجهزتك بتخزين نسخة مشفّرة على مُرحّل Nostr — لا يمكن قراءتها إلا لجهاز يملك بذرتك. أوقفها لإبقاء كل شيء على هذا الجهاز.", + syncAcross: "المزامنة عبر الأجهزة", + syncOn: "مفعّل", + syncOff: "متوقف", + relaysLabel: "المُرحّلات", + relaysHint: "عنوان wss:// واحد لكل سطر.", home: 'الرئيسية', logout: 'تسجيل الخروج', createNew: 'إنشاء جديدة', importExisting: 'استيراد موجودة', genIntro: 'أنشئ عبارة استرداد جديدة من 12 كلمة. اكتبها. فهي الطريقة الوحيدة لاستعادة هذه المحفظة.', @@ -591,6 +870,37 @@ def('ar', { }); def('ur', { + passphrase: "پاس فریز", + howItWorks: "یہ کیسے کام کرتا ہے", + installApp: "ایپ انسٹال کریں", + hiwBasicsTitle: "بنیادی باتیں", + hiwBasics1: "جب آپ والیٹ بناتے ہیں تو یہ صفحہ بارہ بے ترتیب الفاظ تیار کرتا ہے۔ یہی الفاظ آپ کے والیٹ کی کلید ہیں۔ جس کے پاس بھی یہ ہوں وہ سکے خرچ کر سکتا ہے، اس لیے انہیں کاغذ پر لکھ لیں اور کسی ایسی جگہ رکھیں جہاں صرف آپ پہنچ سکیں۔", + hiwBasics2: "اگر آپ بارہ الفاظ کھو دیں اور آپ کے پاس بیک اپ نہ ہو تو سکے ہمیشہ کے لیے ختم ہو جائیں گے۔ نہ کوئی ری سیٹ لنک ہے اور نہ کسی کو فون کیا جا سکتا ہے، اس لیے رقم ڈالنے سے پہلے انہیں بیک اپ کر لیں۔", + hiwBasics3: "نہ کوئی سرور ہے اور نہ کوئی اکاؤنٹ۔ پوری ایپ ایک ہی صفحہ ہے جو آپ کے براؤزر میں چلتا ہے، اس لیے نہ کوئی آپ کے سکے رکھتا ہے اور نہ کسی سرور پر کوئی چیز آپ کی کلیدیں دیکھتی ہے۔ آپ کا بیلنس اور تاریخ دکھانے کے لیے یہ ایک عوامی بلاک ایکسپلورر سے پڑھتا ہے (طے شدہ طور پر mempool.space، یا اگر آپ ترتیبات میں اپنا نوڈ مقرر کریں تو وہ)۔", + hiwBasics4: "آپ اس صفحے کو محفوظ بھی کر سکتے ہیں اور اسے بغیر کسی انٹرنیٹ کے سیدھا اپنے کمپیوٹر سے کھول سکتے ہیں۔ یہ آف لائن کام کرتا رہتا ہے۔", + hiwBasics5: "یہ معمول کے بٹ کوائن معیارات کی پیروی کرتا ہے (12 الفاظ والا BIP39 فریز اور BIP84 نیٹو SegWit کلیدیں)، اس لیے اگر یہ سائٹ کبھی ختم ہو جائے تو آپ وہی فریز Sparrow، Electrum یا کسی بھی دوسرے معیاری والیٹ میں بحال کر سکتے ہیں اور آپ کے سکے وہیں موجود ہوں گے۔", + hiwTribute: "نام Hal Wallet مشہور سائفر پنک اور بٹ کوائن کے علمبردار Hal Finney (1956–2014) کو خراج تحسین ہے۔", + signExport: "دستخط کریں اور (کہیں اور نشر کریں)", + scanQr: "QR اسکین کریں", + scanHint: "کیمرے کو QR کوڈ کی طرف کریں", + scanNoCamera: "کیمرے تک رسائی حاصل نہ ہو سکی۔", + scanNoDecoder: "QR اسکیننگ کو پہلی بار استعمال کے وقت ایک کنکشن کی ضرورت ہوتی ہے۔", + scanUnrecognized: "اس QR سے بٹ کوائن ایڈریس نہیں پڑھا جا سکا۔", + broadcastScanned: "ٹرانزیکشن نشر کریں؟", + broadcastNow: "نشر کریں", + scanOffline: "آپ آف لائن ہیں — اس ٹرانزیکشن کو نشر کرنے کے لیے دوبارہ منسلک ہوں۔", + loadingHistory: "ٹرانزیکشنز لوڈ ہو رہی ہیں…", + explorer: "بلاک ایکسپلورر", + explorerDesc: "وہ سرور جس سے یہ والیٹ بیلنس اور تاریخ کے لیے استفسار کرتا ہے۔ زیادہ سے زیادہ پرائیویسی کے لیے اسے اپنے نوڈ کی طرف مقرر کریں۔", + explorerUrl: "سرور URL", + explorerUrlHint: "Esplora / electrs REST بنیاد، مثلاً https://mempool.space/api", + deviceSync: "ڈیوائس سنک", + deviceSyncDesc: "اس والیٹ کو اپنی ڈیوائسز پر سنک رکھیں، اس کے لیے ایک Nostr ریلے پر ایک خفیہ کردہ نقل محفوظ کریں — صرف آپ کے سیڈ والی ڈیوائس ہی اسے پڑھ سکتی ہے۔ سب کچھ اسی ڈیوائس پر رکھنے کے لیے اسے بند کر دیں۔", + syncAcross: "ڈیوائسز پر سنک کریں", + syncOn: "آن", + syncOff: "آف", + relaysLabel: "ریلے", + relaysHint: "ہر سطر پر ایک wss:// URL۔", home: 'ہوم', logout: 'لاگ آؤٹ', createNew: 'نیا بنائیں', importExisting: 'موجودہ درآمد کریں', genIntro: 'نیا 12 الفاظ کا سیڈ فقرہ بنائیں۔ اسے لکھ لیں۔ یہی اس والیٹ کو بحال کرنے کا واحد طریقہ ہے۔', @@ -636,6 +946,37 @@ def('ur', { }); def('hi', { + passphrase: "पासफ़्रेज़", + howItWorks: "यह कैसे काम करता है", + installApp: "ऐप इंस्टॉल करें", + hiwBasicsTitle: "मूल बातें", + hiwBasics1: "जब आप वॉलेट बनाते हैं, तो पेज बारह यादृच्छिक शब्द उत्पन्न करता है। ये शब्द आपके वॉलेट की कुंजी हैं। जिसके पास ये होंगे वह सिक्के खर्च कर सकता है, इसलिए इन्हें कागज़ पर लिख लें और किसी ऐसी जगह रखें जहाँ केवल आप पहुँच सकें।", + hiwBasics2: "अगर आप बारह शब्द खो देते हैं और आपके पास बैकअप नहीं है, तो सिक्के हमेशा के लिए चले गए। कोई रीसेट लिंक नहीं है और कॉल करने के लिए कोई नहीं है, इसलिए पैसा डालने से पहले इनका बैकअप ले लें।", + hiwBasics3: "कोई सर्वर नहीं और कोई खाता नहीं है। पूरा ऐप एक ही पेज है जो आपके ब्राउज़र में चलता है, इसलिए कोई भी आपके सिक्के नहीं रखता और किसी सर्वर पर कुछ भी आपकी कुंजियाँ कभी नहीं देखता। आपका बैलेंस और इतिहास दिखाने के लिए यह एक सार्वजनिक ब्लॉक एक्सप्लोरर से पढ़ता है (डिफ़ॉल्ट रूप से mempool.space, या आपका अपना नोड अगर आप सेटिंग्स में सेट करें)।", + hiwBasics4: "आप इस पेज को सहेज भी सकते हैं और बिना किसी इंटरनेट के सीधे अपने कंप्यूटर से खोल सकते हैं। यह ऑफ़लाइन भी काम करता रहता है।", + hiwBasics5: "यह सामान्य Bitcoin मानकों का पालन करता है (12-शब्दों का BIP39 वाक्यांश और BIP84 नेटिव SegWit कुंजियाँ), इसलिए अगर यह साइट कभी गायब हो जाए तो आप उसी वाक्यांश को Sparrow, Electrum, या किसी अन्य मानक वॉलेट में पुनर्स्थापित कर सकते हैं और आपके सिक्के वहीं मौजूद होंगे।", + hiwTribute: "Hal Wallet नाम पौराणिक साइफरपंक और Bitcoin अग्रदूत, Hal Finney (1956–2014) को एक श्रद्धांजलि है।", + signExport: "साइन करें और (कहीं और प्रसारित करें)", + scanQr: "QR स्कैन करें", + scanHint: "कैमरे को QR कोड की ओर इंगित करें", + scanNoCamera: "कैमरे तक पहुँच नहीं हो सकी।", + scanNoDecoder: "QR स्कैनिंग के लिए पहली बार उपयोग करते समय एक कनेक्शन चाहिए।", + scanUnrecognized: "उस QR से Bitcoin पता नहीं पढ़ा जा सका।", + broadcastScanned: "लेनदेन प्रसारित करें?", + broadcastNow: "प्रसारित करें", + scanOffline: "आप ऑफ़लाइन हैं — इस लेनदेन को प्रसारित करने के लिए फिर से कनेक्ट करें।", + loadingHistory: "लेनदेन लोड हो रहे हैं…", + explorer: "ब्लॉक एक्सप्लोरर", + explorerDesc: "वह सर्वर जिससे यह वॉलेट बैलेंस और इतिहास के लिए पूछताछ करता है। अधिकतम गोपनीयता के लिए इसे अपने अपने नोड पर इंगित करें।", + explorerUrl: "सर्वर URL", + explorerUrlHint: "Esplora / electrs REST आधार, उदा. https://mempool.space/api", + deviceSync: "डिवाइस सिंक", + deviceSyncDesc: "एक Nostr रिले पर एक एन्क्रिप्टेड प्रति संग्रहीत करके इस वॉलेट को अपने सभी डिवाइस में सिंक रखें — केवल आपके सीड वाला डिवाइस ही इसे पढ़ सकता है। सब कुछ इसी डिवाइस पर रखने के लिए इसे बंद कर दें।", + syncAcross: "डिवाइस में सिंक करें", + syncOn: "चालू", + syncOff: "बंद", + relaysLabel: "रिले", + relaysHint: "प्रति पंक्ति एक wss:// URL।", home: 'होम', logout: 'लॉग आउट', createNew: 'नया बनाएँ', importExisting: 'मौजूदा आयात करें', genIntro: 'नया 12-शब्द वाला सीड वाक्यांश बनाएँ। इसे लिख लें। यही इस वॉलेट को पुनः प्राप्त करने का एकमात्र तरीका है।', @@ -681,6 +1022,37 @@ def('hi', { }); def('bn', { + passphrase: "পাসফ্রেজ", + howItWorks: "এটি কীভাবে কাজ করে", + installApp: "অ্যাপ ইনস্টল করুন", + hiwBasicsTitle: "মূল বিষয়গুলো", + hiwBasics1: "আপনি যখন একটি ওয়ালেট তৈরি করেন, পেজটি বারোটি এলোমেলো শব্দ তৈরি করে। সেই শব্দগুলোই আপনার ওয়ালেটের চাবি। যার কাছে এগুলো আছে সে-ই কয়েন খরচ করতে পারে, তাই এগুলো কাগজে লিখে রাখুন এবং এমন জায়গায় রাখুন যেখানে কেবল আপনিই পৌঁছাতে পারেন।", + hiwBasics2: "আপনি যদি বারোটি শব্দ হারিয়ে ফেলেন এবং কোনো ব্যাকআপ না থাকে, তাহলে কয়েনগুলো চিরতরে হারিয়ে যাবে। কোনো রিসেট লিঙ্ক নেই এবং ফোন করার মতো কেউ নেই, তাই টাকা রাখার আগে এগুলো ব্যাকআপ করে নিন।", + hiwBasics3: "কোনো সার্ভার নেই এবং কোনো অ্যাকাউন্ট নেই। পুরো অ্যাপটি একটি একক পেজ যা আপনার ব্রাউজারে চলে, তাই কেউ আপনার কয়েন ধরে রাখে না এবং কোনো সার্ভারে আপনার চাবি কখনও দেখা যায় না। আপনার ব্যালেন্স ও ইতিহাস দেখানোর জন্য এটি একটি পাবলিক ব্লক এক্সপ্লোরার থেকে পড়ে (ডিফল্টভাবে mempool.space, অথবা আপনি সেটিংসে নিজের নোড সেট করলে সেটি)।", + hiwBasics4: "আপনি এই পেজটি সেভ করে কোনো ইন্টারনেট ছাড়াই সরাসরি আপনার কম্পিউটার থেকে খুলতে পারেন। এটি অফলাইনেও কাজ করতে থাকে।", + hiwBasics5: "এটি প্রচলিত বিটকয়েন মানদণ্ড অনুসরণ করে (একটি ১২-শব্দের BIP39 ফ্রেজ এবং BIP84 নেটিভ SegWit চাবি), তাই এই সাইটটি কখনও হারিয়ে গেলেও আপনি একই ফ্রেজ Sparrow, Electrum, বা অন্য যেকোনো স্ট্যান্ডার্ড ওয়ালেটে পুনরুদ্ধার করতে পারবেন এবং আপনার কয়েন সেখানেই থাকবে।", + hiwTribute: "Hal Wallet নামটি কিংবদন্তি সাইফারপাঙ্ক এবং বিটকয়েন পথিকৃৎ Hal Finney (১৯৫৬–২০১৪)-এর প্রতি একটি শ্রদ্ধাঞ্জলি।", + signExport: "সাইন করুন এবং (অন্যত্র ব্রডকাস্ট করুন)", + scanQr: "QR স্ক্যান করুন", + scanHint: "ক্যামেরাটি একটি QR কোডের দিকে তাক করুন", + scanNoCamera: "ক্যামেরা অ্যাক্সেস করা যায়নি।", + scanNoDecoder: "QR স্ক্যানের জন্য প্রথমবার ব্যবহারের সময় একটি সংযোগ প্রয়োজন।", + scanUnrecognized: "সেই QR থেকে কোনো বিটকয়েন ঠিকানা পড়া যায়নি।", + broadcastScanned: "লেনদেন ব্রডকাস্ট করবেন?", + broadcastNow: "ব্রডকাস্ট করুন", + scanOffline: "আপনি অফলাইনে আছেন — এই লেনদেন ব্রডকাস্ট করতে পুনরায় সংযোগ করুন।", + loadingHistory: "লেনদেন লোড হচ্ছে…", + explorer: "ব্লক এক্সপ্লোরার", + explorerDesc: "এই ওয়ালেট ব্যালেন্স ও ইতিহাসের জন্য যে সার্ভারে অনুসন্ধান করে। সর্বোচ্চ গোপনীয়তার জন্য এটি আপনার নিজের নোডে নির্দেশ করুন।", + explorerUrl: "সার্ভার URL", + explorerUrlHint: "Esplora / electrs REST বেস, যেমন https://mempool.space/api", + deviceSync: "ডিভাইস সিঙ্ক", + deviceSyncDesc: "একটি Nostr রিলেতে একটি এনক্রিপ্ট করা কপি সংরক্ষণ করে এই ওয়ালেটটি আপনার সব ডিভাইসে সিঙ্ক রাখুন — কেবল আপনার সিড আছে এমন একটি ডিভাইসই এটি পড়তে পারে। সবকিছু এই ডিভাইসে রাখতে এটি বন্ধ করে দিন।", + syncAcross: "ডিভাইসজুড়ে সিঙ্ক করুন", + syncOn: "চালু", + syncOff: "বন্ধ", + relaysLabel: "রিলে", + relaysHint: "প্রতি লাইনে একটি wss:// URL।", home: 'হোম', logout: 'লগ আউট', createNew: 'নতুন তৈরি', importExisting: 'বিদ্যমান ইম্পোর্ট', genIntro: 'নতুন ১২-শব্দের সিড ফ্রেজ তৈরি করুন। লিখে রাখুন। এটিই এই ওয়ালেট পুনরুদ্ধারের একমাত্র উপায়।', @@ -726,6 +1098,37 @@ def('bn', { }); def('id', { + passphrase: "Frasa sandi", + howItWorks: "Cara kerjanya", + installApp: "Pasang aplikasi", + hiwBasicsTitle: "Dasar-dasarnya", + hiwBasics1: "Saat Anda membuat dompet, halaman ini menghasilkan dua belas kata acak. Kata-kata itu adalah kunci dompet Anda. Siapa pun yang memilikinya bisa membelanjakan koin Anda, jadi tuliskan di kertas dan simpan di tempat yang hanya bisa Anda jangkau.", + hiwBasics2: "Jika Anda kehilangan dua belas kata itu dan tidak punya cadangan, koin Anda hilang selamanya. Tidak ada tautan setel ulang dan tidak ada yang bisa dihubungi, jadi cadangkan dulu sebelum memasukkan uang.", + hiwBasics3: "Tidak ada server dan tidak ada akun. Seluruh aplikasi adalah satu halaman yang berjalan di browser Anda, jadi tidak ada yang menyimpan koin Anda dan tidak ada server yang pernah melihat kunci Anda. Untuk menampilkan saldo dan riwayat, aplikasi membaca dari penjelajah blok publik (mempool.space secara default, atau node Anda sendiri jika Anda mengaturnya di Pengaturan).", + hiwBasics4: "Anda bahkan bisa menyimpan halaman ini dan membukanya langsung dari komputer tanpa internet sama sekali. Aplikasi ini tetap berfungsi secara offline.", + hiwBasics5: "Aplikasi ini mengikuti standar Bitcoin yang umum (frasa BIP39 12 kata dan kunci BIP84 native SegWit), jadi jika situs ini suatu saat hilang, Anda bisa memulihkan frasa yang sama di Sparrow, Electrum, atau dompet standar lainnya dan koin Anda akan tetap ada di sana.", + hiwTribute: "Nama Hal Wallet adalah penghormatan kepada cypherpunk legendaris dan pelopor Bitcoin, Hal Finney (1956–2014).", + signExport: "Tanda tangani & (siarkan di tempat lain)", + scanQr: "Pindai QR", + scanHint: "Arahkan kamera ke kode QR", + scanNoCamera: "Tidak dapat mengakses kamera.", + scanNoDecoder: "Pemindaian QR memerlukan koneksi saat pertama kali digunakan.", + scanUnrecognized: "Tidak dapat membaca alamat Bitcoin dari QR itu.", + broadcastScanned: "Siarkan transaksi?", + broadcastNow: "Siarkan", + scanOffline: "Anda sedang offline — sambungkan kembali untuk menyiarkan transaksi ini.", + loadingHistory: "Memuat transaksi…", + explorer: "Penjelajah blok", + explorerDesc: "Server yang ditanyai dompet ini untuk saldo dan riwayat. Arahkan ke node Anda sendiri untuk privasi maksimal.", + explorerUrl: "URL server", + explorerUrlHint: "Basis REST Esplora / electrs, mis. https://mempool.space/api", + deviceSync: "Sinkronisasi perangkat", + deviceSyncDesc: "Jaga dompet ini tetap tersinkron di seluruh perangkat Anda dengan menyimpan salinan terenkripsi di relay Nostr — hanya perangkat dengan seed Anda yang bisa membacanya. Matikan untuk menyimpan semuanya di perangkat ini.", + syncAcross: "Sinkronkan antar perangkat", + syncOn: "Aktif", + syncOff: "Nonaktif", + relaysLabel: "Relay", + relaysHint: "Satu URL wss:// per baris.", home: 'Beranda', logout: 'Keluar', createNew: 'Buat baru', importExisting: 'Impor yang ada', genIntro: 'Buat frasa benih baru 12 kata. Catatlah. Ini satu-satunya cara memulihkan dompet ini.', @@ -771,6 +1174,37 @@ def('id', { }); def('tr', { + passphrase: "Parola", + howItWorks: "Nasıl çalışır", + installApp: "Uygulamayı yükle", + hiwBasicsTitle: "Temel bilgiler", + hiwBasics1: "Bir cüzdan oluşturduğunuzda, sayfa rastgele on iki kelime üretir. Bu kelimeler cüzdanınızın anahtarıdır. Bunlara sahip olan herkes paralarınızı harcayabilir, bu yüzden onları bir kâğıda yazın ve yalnızca sizin ulaşabileceğiniz bir yerde saklayın.", + hiwBasics2: "On iki kelimeyi kaybeder ve yedeğiniz olmazsa, paralarınız tamamen kaybolur. Sıfırlama bağlantısı yoktur ve arayabileceğiniz kimse yoktur, bu yüzden para yatırmadan önce onları yedekleyin.", + hiwBasics3: "Sunucu yok, hesap yok. Tüm uygulama tarayıcınızda çalışan tek bir sayfadır, yani paralarınızı kimse tutmaz ve hiçbir sunucu anahtarlarınızı görmez. Bakiyenizi ve geçmişinizi göstermek için herkese açık bir blok gezgininden okur (varsayılan olarak mempool.space, ya da Ayarlar'da belirlerseniz kendi düğümünüz).", + hiwBasics4: "Bu sayfayı kaydedip bilgisayarınızdan hiç internet olmadan bile açabilirsiniz. Çevrimdışı çalışmaya devam eder.", + hiwBasics5: "Olağan Bitcoin standartlarını izler (12 kelimelik bir BIP39 ifadesi ve BIP84 yerel SegWit anahtarları), bu yüzden bu site bir gün kaybolursa aynı ifadeyi Sparrow, Electrum veya başka herhangi bir standart cüzdanda geri yükleyebilirsiniz ve paralarınız tam orada olur.", + hiwTribute: "Hal Wallet adı, efsanevi cypherpunk ve Bitcoin öncüsü Hal Finney (1956–2014) anısına bir saygı duruşudur.", + signExport: "İmzala ve (başka yerde yayınla)", + scanQr: "QR tara", + scanHint: "Kamerayı bir QR koduna doğrultun", + scanNoCamera: "Kameraya erişilemedi.", + scanNoDecoder: "QR taraması ilk kez kullanıldığında bir bağlantı gerektirir.", + scanUnrecognized: "O QR kodundan bir Bitcoin adresi okunamadı.", + broadcastScanned: "İşlem yayınlansın mı?", + broadcastNow: "Yayınla", + scanOffline: "Çevrimdışısınız — bu işlemi yayınlamak için yeniden bağlanın.", + loadingHistory: "İşlemler yükleniyor…", + explorer: "Blok gezgini", + explorerDesc: "Bu cüzdanın bakiyeler ve geçmiş için sorguladığı sunucu. Maksimum gizlilik için kendi düğümünüze yönlendirin.", + explorerUrl: "Sunucu URL'si", + explorerUrlHint: "Esplora / electrs REST tabanı, örn. https://mempool.space/api", + deviceSync: "Cihaz senkronizasyonu", + deviceSyncDesc: "Bir Nostr aktarıcısında şifrelenmiş bir kopya saklayarak bu cüzdanı cihazlarınız arasında senkronize tutun — yalnızca tohumunuza sahip bir cihaz onu okuyabilir. Her şeyi bu cihazda tutmak için kapatın.", + syncAcross: "Cihazlar arasında senkronize et", + syncOn: "Açık", + syncOff: "Kapalı", + relaysLabel: "Aktarıcılar", + relaysHint: "Satır başına bir wss:// URL'si.", home: 'Ana sayfa', logout: 'Çıkış', createNew: 'Yeni oluştur', importExisting: 'Mevcudu içe aktar', genIntro: 'Yeni 12 kelimelik tohum ifadesi oluşturun. Yazın. Bu cüzdanı kurtarmanın tek yolu budur.', @@ -816,6 +1250,37 @@ def('tr', { }); def('vi', { + passphrase: "Cụm mật khẩu", + howItWorks: "Cách hoạt động", + installApp: "Cài đặt ứng dụng", + hiwBasicsTitle: "Những điều cơ bản", + hiwBasics1: "Khi bạn tạo ví, trang web sẽ tạo ra mười hai từ ngẫu nhiên. Những từ đó là chìa khóa cho ví của bạn. Bất kỳ ai có chúng đều có thể tiêu số coin, vì vậy hãy ghi chúng ra giấy và cất ở nơi chỉ mình bạn có thể lấy được.", + hiwBasics2: "Nếu bạn làm mất mười hai từ này và không có bản sao lưu, số coin sẽ mất vĩnh viễn. Không có liên kết đặt lại và không có ai để gọi, vì vậy hãy sao lưu chúng trước khi nạp tiền vào.", + hiwBasics3: "Không có máy chủ và không có tài khoản. Toàn bộ ứng dụng là một trang duy nhất chạy trong trình duyệt của bạn, nên không ai giữ coin của bạn và không có thứ gì trên máy chủ từng thấy được khóa của bạn. Để hiển thị số dư và lịch sử, nó đọc dữ liệu từ một trình duyệt khối công khai (mặc định là mempool.space, hoặc node của riêng bạn nếu bạn thiết lập trong phần Cài đặt).", + hiwBasics4: "Bạn thậm chí có thể lưu trang này và mở trực tiếp từ máy tính mà không cần internet. Nó vẫn hoạt động ngoại tuyến.", + hiwBasics5: "Nó tuân theo các tiêu chuẩn Bitcoin thông thường (cụm 12 từ BIP39 và khóa SegWit gốc BIP84), nên nếu trang web này biến mất, bạn có thể khôi phục cùng cụm từ đó trong Sparrow, Electrum, hoặc bất kỳ ví tiêu chuẩn nào khác và số coin của bạn sẽ vẫn ở đó.", + hiwTribute: "Cái tên Hal Wallet là sự tri ân dành cho nhà cypherpunk huyền thoại và người tiên phong của Bitcoin, Hal Finney (1956–2014).", + signExport: "Ký & (phát đi nơi khác)", + scanQr: "Quét QR", + scanHint: "Hướng camera vào mã QR", + scanNoCamera: "Không thể truy cập camera.", + scanNoDecoder: "Quét QR cần kết nối trong lần sử dụng đầu tiên.", + scanUnrecognized: "Không thể đọc địa chỉ Bitcoin từ mã QR đó.", + broadcastScanned: "Phát giao dịch?", + broadcastNow: "Phát đi", + scanOffline: "Bạn đang ngoại tuyến — hãy kết nối lại để phát giao dịch này.", + loadingHistory: "Đang tải giao dịch…", + explorer: "Trình duyệt khối", + explorerDesc: "Máy chủ mà ví này truy vấn để lấy số dư và lịch sử. Hãy trỏ nó tới node của riêng bạn để có quyền riêng tư tối đa.", + explorerUrl: "URL máy chủ", + explorerUrlHint: "Cơ sở REST của Esplora / electrs, ví dụ https://mempool.space/api", + deviceSync: "Đồng bộ thiết bị", + deviceSyncDesc: "Giữ ví này đồng bộ trên các thiết bị của bạn bằng cách lưu một bản sao đã mã hóa trên relay Nostr — chỉ thiết bị có seed của bạn mới đọc được. Hãy tắt nó để giữ mọi thứ trên thiết bị này.", + syncAcross: "Đồng bộ trên các thiết bị", + syncOn: "Bật", + syncOff: "Tắt", + relaysLabel: "Relay", + relaysHint: "Mỗi URL wss:// trên một dòng.", home: 'Trang chủ', logout: 'Đăng xuất', createNew: 'Tạo mới', importExisting: 'Nhập ví có sẵn', genIntro: 'Tạo cụm từ hạt giống 12 từ mới. Hãy ghi lại. Đây là cách duy nhất để khôi phục ví này.', @@ -861,6 +1326,37 @@ def('vi', { }); def('sw', { + passphrase: "Nenosiri", + howItWorks: "Jinsi inavyofanya kazi", + installApp: "Sakinisha programu", + hiwBasicsTitle: "Misingi", + hiwBasics1: "Unapotengeneza pochi, ukurasa hutengeneza maneno kumi na mawili ya nasibu. Maneno hayo ndiyo ufunguo wa pochi yako. Yeyote aliye nayo anaweza kutumia sarafu, kwa hivyo yaandike kwenye karatasi na yahifadhi mahali ambapo ni wewe tu unaweza kufikia.", + hiwBasics2: "Ukipoteza maneno kumi na mawili na hauna nakala ya akiba, sarafu zimepotea kabisa. Hakuna kiungo cha kuweka upya wala mtu wa kupigia simu, kwa hivyo yahifadhi kabla ya kuweka pesa.", + hiwBasics3: "Hakuna seva wala akaunti. Programu nzima ni ukurasa mmoja unaoendeshwa kwenye kivinjari chako, kwa hivyo hakuna anayeshikilia sarafu zako na hakuna kitu kwenye seva kinachoona funguo zako. Ili kuonyesha salio na historia yako, husoma kutoka kwa kichunguzi cha umma cha vitalu (mempool.space kwa chaguo-msingi, au nodi yako mwenyewe ukiweka moja katika Mipangilio).", + hiwBasics4: "Unaweza hata kuhifadhi ukurasa huu na kuufungua moja kwa moja kutoka kwa kompyuta yako bila intaneti kabisa. Unaendelea kufanya kazi nje ya mtandao.", + hiwBasics5: "Hufuata viwango vya kawaida vya Bitcoin (kifungu cha maneno 12 cha BIP39 na funguo asili za BIP84 SegWit), kwa hivyo ikiwa tovuti hii itatoweka, unaweza kurejesha kifungu hicho cha maneno katika Sparrow, Electrum, au pochi nyingine yoyote ya kawaida na sarafu zako zitakuwa pale pale.", + hiwTribute: "Jina Hal Wallet ni heshima kwa mwanaharakati maarufu wa cypherpunk na mwanzilishi wa Bitcoin, Hal Finney (1956–2014).", + signExport: "Saini na (sambaza mahali pengine)", + scanQr: "Changanua QR", + scanHint: "Elekeza kamera kwenye msimbo wa QR", + scanNoCamera: "Imeshindwa kufikia kamera.", + scanNoDecoder: "Kuchanganua QR kunahitaji muunganisho mara ya kwanza kunapotumika.", + scanUnrecognized: "Imeshindwa kusoma anwani ya Bitcoin kutoka kwa QR hiyo.", + broadcastScanned: "Sambaza muamala?", + broadcastNow: "Sambaza", + scanOffline: "Uko nje ya mtandao — unganisha tena ili kusambaza muamala huu.", + loadingHistory: "Inapakia miamala…", + explorer: "Kichunguzi cha vitalu", + explorerDesc: "Seva ambayo pochi hii huuliza kuhusu salio na historia. Ielekeze kwenye nodi yako mwenyewe kwa faragha ya juu zaidi.", + explorerUrl: "URL ya seva", + explorerUrlHint: "Msingi wa REST wa Esplora / electrs, k.m. https://mempool.space/api", + deviceSync: "Usawazishaji wa vifaa", + deviceSyncDesc: "Weka pochi hii ikiwa imesawazishwa katika vifaa vyako kwa kuhifadhi nakala iliyosimbwa kwa njia fiche kwenye relay ya Nostr — kifaa chenye mbegu yako pekee ndicho kinaweza kuisoma. Izime ili kuweka kila kitu kwenye kifaa hiki.", + syncAcross: "Sawazisha katika vifaa", + syncOn: "Imewashwa", + syncOff: "Imezimwa", + relaysLabel: "Relay", + relaysHint: "URL moja ya wss:// kwa kila mstari.", home: 'Mwanzo', logout: 'Toka', createNew: 'Tengeneza mpya', importExisting: 'Leta iliyopo', genIntro: 'Tengeneza kifungu kipya cha mbegu chenye maneno 12. Kiandike. Ndiyo njia pekee ya kurejesha pochi hii.', @@ -906,6 +1402,37 @@ def('sw', { }); def('mr', { + passphrase: "पासफ्रेज", + howItWorks: "हे कसे चालते", + installApp: "अॅप इन्स्टॉल करा", + hiwBasicsTitle: "मूलभूत गोष्टी", + hiwBasics1: "तुम्ही वॉलेट तयार करता तेव्हा हे पान बारा यादृच्छिक शब्द तयार करते. तेच शब्द तुमच्या वॉलेटची किल्ली आहेत. ज्याच्याकडे ते आहेत तो कॉइन्स खर्च करू शकतो, म्हणून ते कागदावर लिहून ठेवा आणि फक्त तुम्हालाच पोहोचता येईल अशा ठिकाणी ठेवा.", + hiwBasics2: "जर तुम्ही हे बारा शब्द हरवले आणि तुमच्याकडे बॅकअप नसेल, तर कॉइन्स कायमचे गेले. रीसेट लिंक नाही आणि कुणाला फोन करायचाही पर्याय नाही, म्हणून पैसे टाकण्यापूर्वी त्यांचा बॅकअप घ्या.", + hiwBasics3: "येथे कोणताही सर्व्हर नाही आणि कोणतेही खाते नाही. संपूर्ण अॅप एकच पान आहे जे तुमच्या ब्राउझरमध्ये चालते, त्यामुळे तुमचे कॉइन्स कुणाकडेही नसतात आणि कोणत्याही सर्व्हरवर तुमच्या किल्ल्या कधीच दिसत नाहीत. तुमची शिल्लक आणि इतिहास दाखवण्यासाठी ते सार्वजनिक ब्लॉक एक्सप्लोररमधून वाचते (मूलनुसार mempool.space, किंवा तुम्ही सेटिंग्जमध्ये सेट केल्यास तुमचा स्वतःचा नोड).", + hiwBasics4: "तुम्ही हे पान सेव्ह करून इंटरनेटशिवायही थेट तुमच्या संगणकावरून उघडू शकता. ते ऑफलाइनही चालत राहते.", + hiwBasics5: "ते नेहमीच्या बिटकॉइन मानकांचे पालन करते (१२-शब्दांचा BIP39 फ्रेज आणि BIP84 नेटिव्ह SegWit किल्ल्या), त्यामुळे ही साइट कधी नाहीशी झाली तरी तुम्ही तोच फ्रेज Sparrow, Electrum, किंवा इतर कोणत्याही मानक वॉलेटमध्ये पुनर्संचयित करू शकता आणि तुमचे कॉइन्स तिथेच असतील.", + hiwTribute: "Hal Wallet हे नाव पौराणिक सायफरपंक आणि बिटकॉइन अग्रदूत Hal Finney (१९५६–२०१४) यांना श्रद्धांजली आहे.", + signExport: "साइन करा आणि (इतरत्र ब्रॉडकास्ट करा)", + scanQr: "QR स्कॅन करा", + scanHint: "कॅमेरा QR कोडकडे रोखा", + scanNoCamera: "कॅमेरा वापरता आला नाही.", + scanNoDecoder: "QR स्कॅनिंगसाठी पहिल्यांदा वापरताना कनेक्शन आवश्यक आहे.", + scanUnrecognized: "त्या QR मधून बिटकॉइन पत्ता वाचता आला नाही.", + broadcastScanned: "व्यवहार ब्रॉडकास्ट करायचा?", + broadcastNow: "ब्रॉडकास्ट करा", + scanOffline: "तुम्ही ऑफलाइन आहात — हा व्यवहार ब्रॉडकास्ट करण्यासाठी पुन्हा कनेक्ट व्हा.", + loadingHistory: "व्यवहार लोड होत आहेत…", + explorer: "ब्लॉक एक्सप्लोरर", + explorerDesc: "हे वॉलेट शिल्लक आणि इतिहासासाठी ज्या सर्व्हरला विचारणा करते. कमाल गोपनीयतेसाठी ते तुमच्या स्वतःच्या नोडकडे रोखा.", + explorerUrl: "सर्व्हर URL", + explorerUrlHint: "Esplora / electrs REST बेस, उदा. https://mempool.space/api", + deviceSync: "डिव्हाइस सिंक", + deviceSyncDesc: "Nostr रिलेवर एन्क्रिप्टेड प्रत साठवून हे वॉलेट तुमच्या सर्व डिव्हाइसवर सिंक ठेवा — फक्त तुमचा सीड असलेले डिव्हाइसच ते वाचू शकते. सर्व काही या डिव्हाइसवरच ठेवण्यासाठी ते बंद करा.", + syncAcross: "डिव्हाइसदरम्यान सिंक करा", + syncOn: "चालू", + syncOff: "बंद", + relaysLabel: "रिले", + relaysHint: "प्रति ओळ एक wss:// URL.", home: 'मुख्यपृष्ठ', logout: 'बाहेर पडा', createNew: 'नवीन तयार करा', importExisting: 'अस्तित्वातील आयात करा', genIntro: 'नवीन १२-शब्दांचा सीड वाक्यांश तयार करा. तो लिहून ठेवा. हे वॉलेट परत मिळवण्याचा हाच एकमेव मार्ग आहे.', @@ -951,6 +1478,37 @@ def('mr', { }); def('te', { + passphrase: "పాస్ఫ్రేజ్", + howItWorks: "ఇది ఎలా పనిచేస్తుంది", + installApp: "యాప్ను ఇన్స్టాల్ చేయండి", + hiwBasicsTitle: "ప్రాథమిక అంశాలు", + hiwBasics1: "మీరు వాలెట్ సృష్టించినప్పుడు, ఈ పేజీ పన్నెండు యాదృచ్ఛిక పదాలను రూపొందిస్తుంది. ఆ పదాలే మీ వాలెట్కు తాళంచెవి. వాటిని కలిగి ఉన్న ఎవరైనా కాయిన్లను ఖర్చు చేయగలరు, కాబట్టి వాటిని కాగితంపై రాసి, మీకు మాత్రమే అందుబాటులో ఉండే చోట భద్రపరచండి.", + hiwBasics2: "ఆ పన్నెండు పదాలను కోల్పోయి, బ్యాకప్ లేకపోతే, కాయిన్లు శాశ్వతంగా పోతాయి. రీసెట్ లింక్ ఉండదు, ఫోన్ చేయడానికి ఎవరూ ఉండరు, కాబట్టి డబ్బు వేయడానికి ముందే వాటిని బ్యాకప్ చేయండి.", + hiwBasics3: "సర్వర్ ఉండదు, ఖాతా ఉండదు. మొత్తం యాప్ మీ బ్రౌజర్లో నడిచే ఒకే పేజీ, కాబట్టి మీ కాయిన్లను ఎవరూ కలిగి ఉండరు, మీ తాళంచెవులను సర్వర్లో ఏదీ చూడదు. మీ నిల్వ, చరిత్రను చూపడానికి అది ఒక పబ్లిక్ బ్లాక్ ఎక్స్ప్లోరర్ నుండి చదువుతుంది (డిఫాల్ట్గా mempool.space, లేదా సెట్టింగ్లలో మీరు సెట్ చేస్తే మీ స్వంత నోడ్).", + hiwBasics4: "మీరు ఈ పేజీని సేవ్ చేసి, అస్సలు ఇంటర్నెట్ లేకుండానే మీ కంప్యూటర్ నుండి నేరుగా తెరవవచ్చు. ఇది ఆఫ్లైన్లో పనిచేస్తూనే ఉంటుంది.", + hiwBasics5: "ఇది సాధారణ బిట్కాయిన్ ప్రమాణాలను అనుసరిస్తుంది (12-పదాల BIP39 ఫ్రేజ్, BIP84 నేటివ్ SegWit కీలు), కాబట్టి ఈ సైట్ ఎప్పుడైనా అదృశ్యమైతే, మీరు అదే ఫ్రేజ్ను Sparrow, Electrum, లేదా ఏదైనా ఇతర ప్రామాణిక వాలెట్లో పునరుద్ధరించవచ్చు, మీ కాయిన్లు అక్కడే ఉంటాయి.", + hiwTribute: "Hal Wallet అనే పేరు ప్రఖ్యాత సైఫర్పంక్, బిట్కాయిన్ మార్గదర్శి Hal Finney (1956–2014)కి నివాళి.", + signExport: "సంతకం చేసి (వేరే చోట ప్రసారం చేయండి)", + scanQr: "QR స్కాన్ చేయండి", + scanHint: "కెమెరాను QR కోడ్పై గురిపెట్టండి", + scanNoCamera: "కెమెరాను యాక్సెస్ చేయలేకపోయాం.", + scanNoDecoder: "QR స్కానింగ్కు మొదటిసారి వాడేటప్పుడు కనెక్షన్ అవసరం.", + scanUnrecognized: "ఆ QR నుండి బిట్కాయిన్ చిరునామాను చదవలేకపోయాం.", + broadcastScanned: "లావాదేవీని ప్రసారం చేయాలా?", + broadcastNow: "ప్రసారం చేయండి", + scanOffline: "మీరు ఆఫ్లైన్లో ఉన్నారు — ఈ లావాదేవీని ప్రసారం చేయడానికి తిరిగి కనెక్ట్ అవ్వండి.", + loadingHistory: "లావాదేవీలు లోడ్ అవుతున్నాయి…", + explorer: "బ్లాక్ ఎక్స్ప్లోరర్", + explorerDesc: "నిల్వలు, చరిత్ర కోసం ఈ వాలెట్ ప్రశ్నించే సర్వర్. గరిష్ట గోప్యత కోసం దీన్ని మీ స్వంత నోడ్కు గురిపెట్టండి.", + explorerUrl: "సర్వర్ URL", + explorerUrlHint: "Esplora / electrs REST బేస్, ఉదా. https://mempool.space/api", + deviceSync: "పరికర సమకాలీకరణ", + deviceSyncDesc: "ఎన్క్రిప్ట్ చేసిన కాపీని Nostr రిలేపై నిల్వ చేయడం ద్వారా ఈ వాలెట్ను మీ పరికరాల అంతటా సమకాలీకరించండి — మీ సీడ్ ఉన్న పరికరం మాత్రమే దాన్ని చదవగలదు. ప్రతిదీ ఈ పరికరంలోనే ఉంచడానికి దీన్ని ఆఫ్ చేయండి.", + syncAcross: "పరికరాల అంతటా సమకాలీకరించండి", + syncOn: "ఆన్", + syncOff: "ఆఫ్", + relaysLabel: "రిలేలు", + relaysHint: "ఒక్కో లైన్కు ఒక wss:// URL.", home: 'హోమ్', logout: 'లాగౌట్', createNew: 'కొత్తది సృష్టించు', importExisting: 'ఉన్నదాన్ని దిగుమతి', genIntro: 'కొత్త 12-పదాల సీడ్ ఫ్రేజ్ సృష్టించండి. దాన్ని రాసుకోండి. ఈ వాలెట్ను తిరిగి పొందడానికి ఇదే ఏకైక మార్గం.', @@ -996,6 +1554,37 @@ def('te', { }); def('ta', { + passphrase: "கடவுச்சொற்றொடர்", + howItWorks: "இது எப்படி வேலை செய்கிறது", + installApp: "செயலியை நிறுவு", + hiwBasicsTitle: "அடிப்படைகள்", + hiwBasics1: "நீங்கள் ஒரு வாலெட்டை உருவாக்கும்போது, பக்கம் பன்னிரண்டு சீரற்ற சொற்களை உருவாக்குகிறது. அந்தச் சொற்களே உங்கள் வாலெட்டின் சாவி. அவற்றை வைத்திருக்கும் எவரும் நாணயங்களைச் செலவழிக்க முடியும், எனவே அவற்றை காகிதத்தில் எழுதி உங்களால் மட்டுமே அணுக முடிந்த இடத்தில் வைத்துக்கொள்ளுங்கள்.", + hiwBasics2: "பன்னிரண்டு சொற்களை இழந்து காப்புப்பிரதி இல்லையென்றால், நாணயங்கள் நிரந்தரமாக போய்விடும். மீட்டமைப்பு இணைப்பு எதுவும் இல்லை, அழைக்க யாரும் இல்லை, எனவே பணம் போடுவதற்கு முன் அவற்றை காப்புப்பிரதி எடுங்கள்.", + hiwBasics3: "சேவையகம் இல்லை, கணக்கு இல்லை. முழு செயலியும் உங்கள் உலாவியில் இயங்கும் ஒரே ஒரு பக்கம், எனவே உங்கள் நாணயங்களை யாரும் வைத்திருப்பதில்லை, சேவையகத்தில் உள்ள எதுவும் உங்கள் சாவிகளைப் பார்ப்பதில்லை. உங்கள் இருப்பையும் வரலாற்றையும் காட்ட இது ஒரு பொது பிளாக் எக்ஸ்புளோரரிலிருந்து படிக்கிறது (இயல்பாக mempool.space, அல்லது அமைப்புகளில் அமைத்தால் உங்கள் சொந்த நோடு).", + hiwBasics4: "இந்தப் பக்கத்தைச் சேமித்து, இணையம் இல்லாமலேயே உங்கள் கணினியிலிருந்து நேரடியாகத் திறக்கலாம். இது ஆஃப்லைனிலும் தொடர்ந்து வேலை செய்கிறது.", + hiwBasics5: "இது வழக்கமான பிட்காயின் தரநிலைகளைப் பின்பற்றுகிறது (12-சொல் BIP39 சொற்றொடர் மற்றும் BIP84 நேட்டிவ் SegWit சாவிகள்), எனவே இந்த தளம் எப்போதாவது மறைந்தாலும் அதே சொற்றொடரை Sparrow, Electrum, அல்லது வேறு எந்த தரநிலை வாலெட்டிலும் மீட்டெடுக்கலாம், உங்கள் நாணயங்கள் அங்கேயே இருக்கும்.", + hiwTribute: "Hal Wallet என்ற பெயர், புகழ்பெற்ற சைஃபர்பங்க் மற்றும் பிட்காயின் முன்னோடி Hal Finney (1956–2014) அவர்களுக்கான அஞ்சலி.", + signExport: "கையொப்பமிட்டு (வேறு இடத்தில் ஒளிபரப்பு)", + scanQr: "QR ஐ ஸ்கேன் செய்", + scanHint: "கேமராவை ஒரு QR குறியீட்டை நோக்கிக் காட்டுங்கள்", + scanNoCamera: "கேமராவை அணுக முடியவில்லை.", + scanNoDecoder: "QR ஸ்கேனிங்கிற்கு முதல் முறை பயன்படுத்தும்போது இணைப்பு தேவை.", + scanUnrecognized: "அந்த QR இலிருந்து பிட்காயின் முகவரியைப் படிக்க முடியவில்லை.", + broadcastScanned: "பரிவர்த்தனையை ஒளிபரப்பவா?", + broadcastNow: "ஒளிபரப்பு", + scanOffline: "நீங்கள் ஆஃப்லைனில் உள்ளீர்கள் — இந்தப் பரிவர்த்தனையை ஒளிபரப்ப மீண்டும் இணையுங்கள்.", + loadingHistory: "பரிவர்த்தனைகள் ஏற்றப்படுகின்றன…", + explorer: "பிளாக் எக்ஸ்புளோரர்", + explorerDesc: "இருப்புகளுக்கும் வரலாற்றுக்கும் இந்த வாலெட் வினவும் சேவையகம். அதிகபட்ச தனியுரிமைக்கு உங்கள் சொந்த நோடை நோக்கி அமைக்கவும்.", + explorerUrl: "சேவையக URL", + explorerUrlHint: "Esplora / electrs REST அடிப்படை, எ.கா. https://mempool.space/api", + deviceSync: "சாதன ஒத்திசைவு", + deviceSyncDesc: "Nostr ரிலேயில் மறையாக்கப்பட்ட நகலைச் சேமிப்பதன் மூலம் உங்கள் சாதனங்களில் இந்த வாலெட்டை ஒத்திசைவாக வைத்திருங்கள் — உங்கள் சீட் உள்ள சாதனம் மட்டுமே அதைப் படிக்க முடியும். எல்லாவற்றையும் இந்தச் சாதனத்தில் மட்டும் வைக்க அதை அணைக்கவும்.", + syncAcross: "சாதனங்களில் ஒத்திசை", + syncOn: "இயக்கு", + syncOff: "அணை", + relaysLabel: "ரிலேக்கள்", + relaysHint: "ஒரு வரிக்கு ஒரு wss:// URL.", home: 'முகப்பு', logout: 'வெளியேறு', createNew: 'புதிது உருவாக்கு', importExisting: 'உள்ளதை இறக்கு', genIntro: 'புதிய 12-சொல் சீட் சொற்றொடரை உருவாக்கவும். எழுதி வைக்கவும். இந்த வாலட்டை மீட்க இதுவே ஒரே வழி.', |
