Repository navigation
copy: rename "Donation Button" to "Donate Button" across UI and docs - #14
Merged
Merged
Conversation
The widget is named "Donate Button" in product copy, but the repo said "Donation Button" throughout. Rename the user-facing string across the generator UI, the docs and the manual test pages. - index.html / 404.html: <title>, page and card headings, lead copy, and the og:/twitter: meta tags. - js/generator.js: the embed-snippet comments it emits (<!-- Blink Donate Button widget/script -->), kept in sync with the copy of that same snippet in README.md. - README / MULTILANG-README / ANALYTICS-README, the package.json description, and the *-test.html pages. Identifiers are deliberately untouched, since renaming them would break live embeds or split analytics history: the donation-button.blink.sv Pages path (every embed in the wild loads its script from there), the blink-donation-button package name, and the 'embedded_donation_button' referral tag. Copy only, no behavior change. 147 tests pass; eslint clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Follow the UI rename through to the invoice memo, the last payer-visible
"donation button" string in the widget.
The two receive paths differ, and only one is actually affected:
- Custodial: the memo is the invoice description the payer's wallet
renders (lnInvoiceCreateOnBehalfOfRecipient and the USD variant), so
payers now see "<username> donate button".
- Self-custodial (Spark): the memo is sent as the LUD-12 comment, while
the description comes from the LNURL metadata server-side
("Payment to <username>"). That path's payer-visible text is unchanged
by this commit, as it was before it. blink.sv advertises
commentAllowed: 255, well above the memo length, so nothing is
truncated.
The memo assertions in the canonical helper test and the inline-parity
Spark test move with it.
Version 1.5.1 -> 1.5.2 plus the analytics widget_version, per AGENTS.md,
since this changes deployed behavior. No public API / DOM changes.
147 tests pass; eslint clean.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
pretyflaco
approved these changes
Aug 20, 2026
Collaborator
There was a problem hiding this comment.
Custodial smoke test: PASSED ✅
Checked out the PR head (c1d2c7e), served the widget locally, and initialized it against the custodial test account pretyflaco (BTC wallet, resolved via accountDefaultWallet). The widget took the custodial path and produced an invoice via lnInvoiceCreateOnBehalfOfRecipient:
- Invoice:
lnbc10u1p4gwg2qpp539crdq2vch2hywj4wwlnm6aac4jg4v22fvf4c0yx4g6rggmdunyqdp8wpex2arevekxzcm0ypjx7mnpw3jjqcn4w36x7mscqzpuxqzuysp5xt4egkc43wk78p9l0g0jxkr74qnm7mx0wuj5uyprx4lelqmqnc9q9qxpqysgqyf2zzfcfxch7tvhw4qqpfrwnkwu9ex6cperf4akauuz7nev6cpk9muk2suy9ezxdcjc0sm55glaawavqz5ppkn7he7r2ee73zwkkc2sqjvzupv(1,000 sats, 15 min expiry) - Decoded BOLT11 description field:
pretyflaco donate button— the new memo, exactly as intended - Rendered in Blink mobile (Send Bitcoin screen) as the note/label "pretyflaco donate button" — payer-visible string confirmed in a real wallet (screenshot below)
- Analytics URL on the widget:
widget_version=1.5.2,referral=embedded_donation_button(unchanged), script path unchanged npm teston the PR branch: 147/147 passing across 11 files
This checks the last open acceptance item (custodial smoke). Approving.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

The widget is called the Donate Button in product copy, but the repo said
"Donation Button" throughout. This renames the user-facing string everywhere it
appears, and stops at identifiers.
ab23734(#9) made "Donation Button" consistent; this is the same sweep in theother direction, now that the name has settled.
What changed
Commit 1 — copy across UI and docs (13 files, no behavior change)
index.html/404.html:<title>, page and card headings, lead copy, and theog:/twitter:meta tags.js/generator.js: the embed-snippet comments the generator emits(
<!-- Blink Donate Button widget/script -->), kept in sync with the copy of thatsame snippet in
README.md.README/MULTILANG-README/ANALYTICS-README, thepackage.jsondescription,and the
*-test.htmlpages.Commit 2 — invoice memo + version bump (payment-path; isolated for review)
The memo was the last payer-visible "donation button" string. The two receive paths
differ, and only one is actually affected:
(
lnInvoiceCreateOnBehalfOfRecipientand the USD variant), so payers now see<username> donate button.comment, while thedescription comes from the LNURL metadata server-side (
Payment to <username>).That path's payer-visible text is unchanged by this PR, as it was before it.
blink.sv advertises
commentAllowed: 255, well above the memo length, so nothingis truncated.
Version
1.5.1 -> 1.5.2plus the analyticswidget_version, per AGENTS.md.Deliberately NOT renamed
Renaming these would break live embeds or split analytics history:
donation-button.blink.sv(Pages path, all URLs)blink-donation-button(package.jsonname)embedded_donation_button(analyticsreferraltag)Acceptance requirements
"donate button" — zero occurrences remain repo-wide.
README.mdstill matches the onejs/generator.jsemits.BlinkPayButton.init, its config options, the container-idcontract and the success/QR DOM behavior are untouched.
widget_versionbumped together.<username> donate buttonas theinvoice description in the payer's wallet.
Testing specs
Automated — 147 tests pass across 11 files, eslint clean (4 pre-existing
no-unused-varswarnings, untouched):The two memo assertions move with the change:
tests/blink-lnurl.spec.js— canonicalgetInvoiceFromLightningAddresstests/widget-spark.spec.js— the inline-copy parity testManual — per AGENTS.md, payment-path changes want a real smoke:
spark-test.htmlagainst a self-custodial username. Expect the description to readPayment to <username>(LNURL metadata, unchanged by this PR) — the memo ridesalong as the LUD-12 comment.
<username> donate buttonin the payer's wallet. Not yet run — needs amaintainer with a custodial test account.
Not addressed here:
npm run formatcurrently fails on 11 files onmain(includingfiles this PR never touches). CI runs
npm ci && npm test, so it is green. Reformattingbelongs in its own PR.
Screenshots