Skip to content

[NF-40] [FRONTEND] Points/Rewards Redemption UI #115

Description

@wumibals

Overview

Once on-chain points/referral accrual (NF-13) and the claim/escrow contract (NF-14) exist, there's no UI for a user to actually see and redeem what they've accrued.

Problem

Points are currently only ever a mock number shown on the frontend (per GF-23's original scope) with no real redemption path. Even once NF-13/NF-14 land on-chain, nothing in the app calls claim() or shows a user their real, currently-redeemable value.

Proposed Solution

  • New page app/src/app/rewards/page.tsx: shows the connected wallet's current points balance and referral-bonus-owed (read via the points/rewards contracts, once an SDK client exists for them — coordinate with whichever future SDK issue covers that, or call the contracts directly via RPC as an interim step if no SDK client exists yet), the current redemption rate (NF-14), and the resulting redeemable USDC amount.
  • A "Claim Rewards" button calling the escrow contract's claim(), with the standard pending/confirmed/failed transaction states used elsewhere in the app.
  • Show claim history (past redemptions) for transparency.

Acceptance Criteria

  • Points and referral balances shown match on-chain state exactly (no client-side estimation drift)
  • Redeemable USDC amount is computed using the current on-chain redemption rate, not a hardcoded value
  • Claim button correctly triggers and tracks a real on-chain transaction
  • Claim history accurately reflects past redemptions
  • Page shows a clear zero-state for wallets with no accrued rewards

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions