Skip to content

feat: Add real-time bounty countdown timer with urgency indicators (Closes #826)#1251

Closed
sepulchralvoid666 wants to merge 1 commit into
SolFoundry:mainfrom
sepulchralvoid666:feat/bounty-826-countdown-timer
Closed

feat: Add real-time bounty countdown timer with urgency indicators (Closes #826)#1251
sepulchralvoid666 wants to merge 1 commit into
SolFoundry:mainfrom
sepulchralvoid666:feat/bounty-826-countdown-timer

Conversation

@sepulchralvoid666
Copy link
Copy Markdown

What this does

Adds a real-time countdown timer component for bounty deadlines with visual urgency indicators.

New Component: BountyCountdown

  • Two variants: card (compact) and detail (full display)
  • Real-time updates: Refreshes every second via useEffect + setInterval
  • Color-coded urgency:
    • Normal: muted text with static dot
    • Warning (< 24h): yellow text with yellow dot
    • Urgent (< 1h): red text with pulsing red dot + URGENT badge
    • Expired: red Expired label
  • Card variant: Compact 2d 5h 30m format with status dot
  • Detail variant: Full 05:30:15 countdown with d/h/m/s labels and urgency badges

Integration

  • BountyCard: Replaces Clock icon + timeLeft() with BountyCountdown variant="card"
  • BountyDetail: Replaces static deadline display with BountyCountdown variant="detail"

How to test

  1. Set a bounty deadline to < 1 hour from now — verify red pulsing dot + URGENT badge
  2. Set deadline to < 24 hours — verify yellow warning styling
  3. Set deadline to > 24 hours — verify normal muted styling
  4. Set deadline to past — verify Expired label
  5. Verify timer updates every second without page refresh

Closes #826

Wallet: 2JHa4QQWNV7AGSGsVeX1cwjZtFcmTTomb1TrJmQthoh3

- New BountyCountdown component with card and detail variants
- Real-time updates every second with useEffect + setInterval
- Color-coded urgency: normal (muted), warning (<24h, yellow), urgent (<1h, red pulse)
- Shows 'Expired' when deadline passes
- Card variant: compact format (2d 5h 30m) with status dot
- Detail variant: full format (05:30:15) with urgency badges
- Integrated into BountyCard (replaces Clock + timeLeft) and BountyDetail (replaces static deadline display)

Closes SolFoundry#826

**Wallet:** 2JHa4QQWNV7AGSGsVeX1cwjZtFcmTTomb1TrJmQthoh3
@sepulchralvoid666 sepulchralvoid666 deleted the feat/bounty-826-countdown-timer branch May 13, 2026 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🏭 Bounty T1: Bounty Countdown Timer Component

1 participant