February 16th, 2026
Deep Dive into Event Details & Live Verification Today we focused on the depth of the user experience—specifically, what happens when a user clicks an event, and what they see on the home screen “Verification Card.”🔍 Event Detail Modal Refactor
We moved the event details from a simple alert to a rich, scrollable bottom-sheet experience. Commit:Refactor EventDetailModal and centralize event selection state
- State: Centralized
selectedEventin the globaluseCalendarStore, decoupling it from local component state. - Design: Updated to a sleek dark theme (
#1A1A1A) popup.
feat(EventDetailModal): Refine UI with dynamic Map integration and Status badges
- Location: Added an interactive Google Maps integration that shows the event’s geofence.
- Status: Dynamic badges now indicate if an event is Verified, Pending, or Failed.
- Content: Added clear sections for Description, Time, and Status.
feat(EventDetailModal): Add scrollable Penalty and Waiver sections
- Conditions: We now visualize the “stakes” of the commitment.
- Penalties: Icons for Money, Photo, Message, BlockApp.
- Waivers: Icons for Captcha, Paragraph, Intense, Run.
- Scroll: Wrapped content in a
ScrollViewto handle long descriptions and condition lists gracefully.
⏱️ Verification Card & Live Timer
The home screen card that tells you “What’s next?” got a major upgrade. Commit:feat(VerificationCard): Implement dynamic event fetching and timer
- Dynamic Data: Connected the card to
useCalendarEventsto fetch the real upcoming pending instance. - Live Timer: Implemented a countdown timer that ticks down to the deadline.
- Empty States: Handles scenarios with no upcoming tasks gracefully.
feat(ui): Enhance VerificationCard loading state with shimmer skeleton
- Shimmer Effect: Replaced static “Loading…” text with a high-quality “Shine-through” shimmer skeleton.
- SkeletonBlock: Upgraded our core skeleton component from a simple pulse to a moving gradient shine for a more premium feel.