Skip to content

feat: real-time group detail updates with polling#88

Open
opensecretsauce wants to merge 2 commits intosorosave-protocol:mainfrom
opensecretsauce:feat/realtime-updates
Open

feat: real-time group detail updates with polling#88
opensecretsauce wants to merge 2 commits intosorosave-protocol:mainfrom
opensecretsauce:feat/realtime-updates

Conversation

@opensecretsauce
Copy link

Closes #35

Changes

  • New usePolling hook (src/hooks/usePolling.ts) — polls every N ms, auto-stops when active=false
  • Polls every 10 seconds when group is Active; stops automatically when round is complete
  • Updated RoundProgress with:
    • 🟢 Animated live indicator (pulses while active, stops when complete)
    • Last-updated timestamp
    • Green progress bar + checkmark when all contributions received
    • Full dark mode support
  • Group detail page tracks contributionsReceived in state, updated on each poll

Build

pnpm build

- Add WalletAdapter interface (src/lib/wallets/index.ts)
- Add FreighterAdapter, xBullAdapter, AlbedoAdapter
- Refactor providers.tsx to support multiple wallets + localStorage persistence
- Update ConnectWallet.tsx with wallet selection modal
- Create src/lib/sdk.ts as local stub for @sorosave/sdk
- Create src/lib/wallet.ts with multi-wallet signTransaction routing
- Fix all @sorosave/sdk missing module errors — build passes clean
@opensecretsauce
Copy link
Author

⚠️ Dependency note: This PR should be reviewed after #81 merges. PR #81 introduces the foundational infrastructure (wallet adapters, local SDK stub, import fixes) that this feature builds on. Once #81 is merged, I will rebase this branch and the diff will only show the feature-specific changes.

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.

Implement group detail real-time updates

1 participant