# Phase 2–4 Handoff — Context for New Session ## Status - **Phase 1:** COMPLETE — commit `29e326b`, pushed to `https://code.bshtech.net/Sicherhaven/Eventify-frontend` - **Phase 2:** 17 effective gaps (19 listed, 2 done in Phase 1) - **Phase 3:** 26 effective gaps (28 listed, 2 done in Phase 1) - **Phase 4:** 7 gaps **Full plan:** `/Users/bshtechnologies/.claude/plans/witty-kindling-lightning.md` --- ## Already Done in Phase 1 (skip these) | ID | Feature | |----|---------| | NOTIF-002 | Notification panel (DraggableScrollableSheet built) | | NOTIF-003 | Notification types (4 colors in notification_tile.dart) | | NOTIF-004 | Mark all read + individual read state | | LDR-004 | SQL RANK tie handling (auto-fixed by real API) | --- ## Phase 2 Task Summary (17 gaps, all High priority) | Task | Gap IDs | Files | Backend? | |------|---------|-------|----------| | P2-A Home UX | HOME-001/002/003 | `home_screen.dart` | No | | P2-B Auth | AUTH-004, AUTH-002 | `login_screen.dart`, `auth_service.dart` | AUTH-002 yes | | P2-C Location | LOC-001, LOC-002 | `events_service.dart` | Yes (haversine) | | P2-D Gamification UI | GAM-002, GAM-005, LDR-002 | `contribute_screen.dart`, `profile_screen.dart` | No | | P2-E Contributor | CTR-001, CTR-002 | `contribute_screen.dart` | No | | P2-F Achievements | ACH-001 | `gamification_service.dart` | No | | P2-G Profile Cards | PROF-003 | `profile_screen.dart` | No | | P2-H Skeleton Loading | UX-001 | all screens | No (add shimmer pkg) | | P2-I Booking Bar | EVT-003, BOOK-004 | `learn_more_screen.dart` | No | **New package needed:** `shimmer: ^3.0.0` **Parallelizable:** All except AUTH-002 Flutter (depends on AUTH-002 Django). --- ## Phase 3 Task Summary (26 gaps, all Medium priority) | Task | Gap IDs | New Files | |------|---------|-----------| | P3-A Auth profile | AUTH-003/005/006 | — | | P3-B Home | HOME-004/006 | — | | P3-C Event detail | EVT-001/002 | — | | P3-D Pincodes DB | LOC-003 | `assets/data/kerala_pincodes.json` | | P3-E Promo code | BOOK-003 | — | | P3-F Gamification | GAM-003/004/006 | `lib/widgets/tier_avatar_ring.dart` | | P3-G Leaderboard card | LDR-003 | — | | P3-H Contributor profile | CTR-004/005 | `lib/screens/contributor_profile_screen.dart` | | P3-I Achievements | ACH-002/003 | — | | P3-J Reviews ring | REV-002 | — | | P3-K Profile | PROF-001/002/004 | — | | P3-L Share card | SHARE-001/002 | `lib/features/share/share_rank_card.dart` | | P3-M UX system | UX-003/004/006 | `glass_card.dart`, `eventify_bottom_sheet.dart` | **New packages:** `share_plus: ^7.0.0` **New backend:** `POST /bookings/apply-promo/`, `PATCH /api/user/update-profile/` multipart --- ## Phase 4 Task Summary (7 gaps, all Low priority) | Task | Gap IDs | Detail | |------|---------|--------| | P4-A Search + Share | HOME-007, CTR-003 | Event title search, share status | | P4-B Reviews | REV-001/003/004 | DiceBear avatars, stagger anim, spring success | | P4-C Animation polish | UX-002/005 | Bouncing loader, Hero/Slide/Fade transitions | **New package:** `flutter_staggered_animations: ^1.1.1` --- ## Architecture Reminder - **Gamification + Reviews** → Node.js `app.eventifyplus.com/api/v1/` → `_nodeBase` - **Everything else** → Django `em.eventifyplus.com/api` → `baseUrl` - Key file: `lib/core/api/api_endpoints.dart` - State: Provider → register in `lib/main.dart` MultiProvider - Pattern: copy from `lib/features/events/services/events_service.dart` ## How to Start in New Session 1. Open `Eventify-frontend` in Claude Code 2. Run `/eventify` 3. Say: **"Start Phase 2. Read _notes/05 - Tasks & Planning/Phase2_Handoff.md and the plan at /Users/bshtechnologies/.claude/plans/witty-kindling-lightning.md"** ## Gap Analysis CSV (full 61 gaps) `/Users/bshtechnologies/Documents/Eventify-frontend/_notes/feature_gap_analysis.csv`