Commit Graph
16 Commits
Author SHA1 Message Date
jwintermandsuch-gitea c0e0ca2012 fix(tips): show tips made by v0.2.x wallets on the tip page
The site now reads tips from the v0.3 backend, which does not hold tips
created by v0.2.x wallets, so their links said "Tip not found". A 404 from
the v0.3 backend now falls back to the legacy backend. Such tips are shown
without a claim button, with a note that claiming needs the next wallet
update, because a v0.3 wallet cannot claim them yet. Only the fields the
page renders are kept from either response.
2026-11-09 12:44:26 -05:00
such-giteaandJohn Winter Murphy ecd3cf0ebd fix(settings): read the v0.3 username response shape
The v0.3 backend answers GET /users/me/username with {"username": ...};
the legacy backend sent a bare string. The page put the object into state
and rendered it, so /settings threw for every signed-in user.

parseUsernameResponse accepts both shapes and returns only a string or
null. Legacy-only fields on /auth/me are optional. Adds node:test cases,
run with npm test.
2026-11-09 12:44:22 -05:00
jwinterm 0f45143431 fix(auth): sign in against the v0.3 backend
v0.3 wallets register with the v0.3 backend, so a site built against the
legacy backend answered every v0.3 sign-in with "User not found". The
v0.3 backend resolves website sign-in by each coin's own key and adopts a
legacy identity on first proof, so it serves both generations.

The v0.3 backend has no social linking. Settings now loads linked accounts
separately and hides that section when they are unavailable, instead of
failing the whole page and taking username editing with it. The public user
count and stats may come from a separate backend via
NEXT_PUBLIC_STATS_API_URL; unset keeps today's behavior.
2026-11-09 12:44:22 -05:00
such-giteaandJohn Winter Murphy 1aca8110ad feat: link desktop downloads to official GitHub releases 2026-11-09 12:28:39 -05:00
jwinterm fdacf56ce5 refactor: swap inline mirror for published @such-software/smirk-dapp-api
The runtime that installs window.smirk in v0.3.0+ iframe context
is now available as a published npm package, so smirk.cash can
import it directly instead of carrying a synced local copy. Same
behaviour, less maintenance burden.

- npm install @such-software/smirk-dapp-api@^0.3.0
- SmirkBridgeBootstrap imports installSmirkPageApi from the package
- Local mirror deleted (src/lib/smirk-iframe-bridge.ts)
2026-06-08 08:06:34 -04:00
jwinterm 60de8c8fe5 feat: install postMessage transport for v0.3.0+ Smirk wallet iframes
Adds a runtime that auto-detects parent-frame context and installs
window.smirk via postMessage, so smirk.cash works inside the
v0.3.0 Smirk desktop wallet's embedded browser the same way it
already works under the v0.2.x browser extension. Extension-injected
window.smirk takes precedence, so existing dapps and the v0.2.x
flow are unchanged.

Local mirror of @smirk/dapp-api's installSmirkPageApi pending
that package being published to npm; see the file header for the
sync contract.
2026-06-07 19:11:05 -04:00
jwinterm 31be623856 Feat: add stats page 2026-02-01 12:53:29 -05:00
jwinterm f63bafbc48 feat: discord integration 2026-02-01 10:13:57 -05:00
jwinterm b95877ac9c add ToS to website 2026-02-01 09:13:00 -05:00
jwinterm 8581d3ad95 feat: add public tip claiming UI
- Extract fragment key from URL
- Check confirmations before allowing claim
- Add claim button with loading/error states
- Update SmirkAPI types for claimPublicTip
2026-01-27 10:50:42 -05:00
jwinterm 570b48b464 feat: add username management and user counter
- Add username setting UI to settings page
- Add user counter on home page
- Add API functions for username/count endpoints
2026-01-27 10:34:41 -05:00
jwinterm fa1b3230d1 docs: update TODO and tips page for alpha
- Simplify TODO with completed items
- Tips page shows confirmation status
2026-01-27 09:31:55 -05:00
jwinterm f02cbd8a4c add tipping page 2026-01-26 17:08:12 -05:00
jwinterm 7cf90c08db feat: add settings page with Telegram account linking 2026-01-26 11:38:43 -05:00
jwinterm e7b459f5bd feat: single-asset auth, UI improvements
- Auth flow now uses single signature from user's chosen coin
- Update SmirkSignResult types to match extension API
- Add Creepster font for branding
- Better error messages from API responses
- Update docs to reflect single-asset auth is working
2026-01-25 12:40:57 -05:00
jwinterm 20a27d3fd2 feat: initialize smirk-website with connect flow
- Next.js 16 with TypeScript and Tailwind CSS
- Single-asset authentication (user picks favorite coin to sign)
- Logo with glow animation
- Coin picker UI with all 5 assets
- API client for backend auth endpoints
- TypeScript types for window.smirk extension API
2026-01-25 08:18:14 -05:00