aboutsummaryrefslogtreecommitdiffstats
path: root/src/i18n.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-08-03 22:28:53 -0700
committerAdam Soltys <[email protected]>2026-08-03 22:28:53 -0700
commit75ec27747ec05da8990208d67052ad11d25f3c44 (patch)
tree0d404cd0e8c9ecce57ba3c55359e17efa0d4b799 /src/i18n.js
parent1f96f513060d65c3a4e7c7cda100cde4ef8ee2c3 (diff)
downloadcoinosv3-75ec27747ec05da8990208d67052ad11d25f3c44.tar.gz
coinosv3-75ec27747ec05da8990208d67052ad11d25f3c44.zip
Speak as the account you logged in with, or not at all
Logging in with a remote signer and reloading left the app showing your avatar and profile while signing everything with the wallet's own key — so chat messages arrived under a different npub with a stranger's punk on them. identity() had a fallback: when the login signer wasn't available it quietly used the wallet key instead. That fallback is gone. If you logged in as a nostr account, the app speaks as that account or it refuses and says so. Refusing is only reasonable if the signer usually comes back, so a login now persists what it takes to be that identity again. A remote signer stores its NIP-46 client key and pointer — the signer authorised that client key, not one page load, so rebuilding from it resumes the session without prompting. A pasted key stores the key, which is already the seed of everything here since the wallet's mnemonic derives from it. Resume is single-flight with a pause after failure, because identity() is asked on every send and a signer that isn't answering must not mean a relay connection per keystroke. Existing remote-signer logins predate the stored session, so they need one more sign-in to become resumable. Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Wvj4aoeMZwA7VUGdJP9Swi
Diffstat (limited to 'src/i18n.js')
-rw-r--r--src/i18n.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/i18n.js b/src/i18n.js
index 177de06..53cd643 100644
--- a/src/i18n.js
+++ b/src/i18n.js
@@ -124,11 +124,11 @@ const STR = {
howItWorks: 'How it works',
installApp: 'Install app',
hiwBasicsTitle: 'The basics',
- hiwBasics1: 'When you make a wallet, the page generates twelve random words — the key to your money. Anyone who has them can spend your coins, and if you lose them the coins are gone for good: there’s no reset link and no one to call. Write them down on paper before you put money in.',
- hiwBasics2: 'There’s no server and no account. The whole app is one page that runs in your browser — nobody holds your coins, nothing on a server ever sees your keys, and you can even save the page and use it offline.',
- hiwBasics3: 'It follows the standard Bitcoin formats, so the same twelve words will always restore your wallet in Sparrow, Electrum, or any other standard wallet — even if this site disappears.',
+ hiwBasics1: 'When you make a wallet, the page generates twelve random words which are the keys to the wallet. Anyone who has them can spend the coins in the wallet. If you lose them, the coins are gone for good. Write them down on paper before you put money in.',
+ hiwBasics2: 'There’s no server and no account. The whole app is one page that runs in your browser. You can save the page and use it offline.',
+ hiwBasics3: 'It follows the standard Bitcoin formats, so the same twelve words will restore your wallet in Sparrow, Electrum, or any other standard wallet even if this site disappears.',
hiwLnTitle: 'Spending and Savings',
- hiwLn1: 'Your money sits in two places, like a savings account and the cash in your pocket. Savings is ordinary Bitcoin on the blockchain — safest for money you’re keeping, but each move costs a mining fee and waits for a confirmation. Spending sends and arrives instantly and free, and is still only yours: it runs on Ark, a newer layer on top of Bitcoin where every coin stays locked to your key, and it speaks Lightning, so you can pay and be paid by any bitcoin app or shop.',
+ hiwLn1: 'Your money sits in two places. Savings is ordinary Bitcoin on the blockchain. Withdrawals costs a mining fee and deposits take time to confirm. Deposits into the spending wallet arrive instantly and payments out are free: it runs on Ark and speaks Lightning, so you can pay and be paid by any bitcoin app or shop.',
hiwLn2: 'Move money either way under your balance — a small fee each direction, free inside Spending. The wallet handles all the upkeep on its own (just open the app now and then), and every coin in Spending carries a pre-signed escape route: even if the coinos server vanished, you could pull your money back on-chain yourself.',
hiwGiftsTitle: 'Gifts',
hiwGifts1: 'You can gift bitcoin with a link: whoever opens it claims the coins into their own wallet — no app, no signup. On-chain gifts lock the coins until claimed and can be cancelled or reclaimed; Ark gifts claim instantly and free, even into a brand-new empty wallet.',
@@ -157,7 +157,7 @@ const STR = {
msgAdmin: 'admin',
msgEdited: '(edited)',
msgDelete: 'Delete message',
- msgNoIdentity: 'No nostr identity available to sign with',
+ msgNoIdentity: "Your nostr signer isn't connected — reconnect it to send as yourself",
msgSendFailed: 'No relay accepted the message',
msgDmsTitle: 'Messages',
msgCommunitiesTitle: 'Communities',