Label: complexity: high
Points: 200
Description
After fully funding an invoice, there is no way to celebrate or share the achievement. This issue adds a "Share Achievement" flow that appears when a payment completes an invoice, generating a shareable image card with the invoice ID, total amount, and a "Fully Funded!" badge for social media.
Technical Context
Involves invoice/[id]/page.tsx and a new src/components/AchievementCard.tsx. Detect when invoice.status transitions to Released after a payment. Render achievement card as a styled div and use html2canvas to export as PNG. Share via Web Share API or download. Add html2canvas to package.json.
Acceptance Criteria
Label: complexity: high
Points: 200
Description
After fully funding an invoice, there is no way to celebrate or share the achievement. This issue adds a "Share Achievement" flow that appears when a payment completes an invoice, generating a shareable image card with the invoice ID, total amount, and a "Fully Funded!" badge for social media.
Technical Context
Involves
invoice/[id]/page.tsxand a newsrc/components/AchievementCard.tsx. Detect wheninvoice.statustransitions toReleasedafter a payment. Render achievement card as a styleddivand usehtml2canvasto export as PNG. Share via Web Share API or download. Addhtml2canvastopackage.json.Acceptance Criteria
html2canvashtml2canvasadded topackage.json