The mobile app has been transformed to function like the web app with iterative dialogue-based category mapping instead of immediate skill identification from single activities.
- 8 categories matching web app:
- 🔧 Human Skills (Durable)
- 🧠 Meta-Learning & Self-Awareness
- 🛠️ Maker & Builder Skills
- 🌍 Civic & Community Impact
- 🖼️ Creative Expression & Communication
- 🧩 Problem-Solving & Systems Thinking
- 💼 Work & Entrepreneurial Experience
- 🔭 Future Self & Directionality
- NO_OP category for weak fits
- Progress: mapped categories / 8
- Tracks mapped categories with justifications
- Stores conversation history
- AsyncStorage persistence
- Statistics and reset functions
Added two new dialogue functions:
synthesizeNextQuestion(): Generates contextual questions based on conversation historymapAnswerToCategory(): Maps answers to categories with NO_OP support
UI Components:
- 8 category cards (grey when unmapped, purple border when mapped)
- Progress card showing mapped/total/percentage
- Modal for question/answer
- Loading modal for API calls
- Completion modal when all 8 categories mapped
- Two FABs: Reset (red) and Add Question (purple)
Flow:
- User clicks + FAB
- System shows question modal
- User types answer and submits
- System maps to category (or NO_OP if weak fit)
- Background prefetch starts for next question
- Repeat until 8/8 categories mapped
Prefetching Logic:
- After successful mapping, immediately starts fetching next question in background
- If user clicks + while prefetching, shows "Wait while system thinks..."
- Once prefetch completes, question appears instantly on next + click
- Matches web app UX optimization
- Welcome screen simplified: single "Start Journey" FAB → DialogueDashboard
- Added DialogueDashboard route to navigation types and App.tsx
- Old analysis flows (Home, VoiceAnalysis, TextAnalysis) remain for reference
- Login → Welcome screen
- Tap "Start Journey" button
- Should navigate to Skills Passport screen showing 8 grey category cards
- Tap the purple + FAB
- Modal appears with: "Tell me what you are typically doing when you lose track of time"
- Type a substantive answer (e.g., "I love building things with Arduino and creating robots")
- Tap "Submit Answer"
- Loading modal shows "Thinking... Mapping your response"
- After a few seconds, category card turns purple with border (e.g., "Maker & Builder Skills")
- Progress shows 1/8 categories, 12% complete
- Wait ~2 seconds for background prefetch
- Tap + FAB again
- New contextual question appears immediately (prefetched)
- Answer and submit
- Repeat until 8/8
Try giving a vague answer like "I don't know" or "Maybe sometimes" - the system should detect weak fit and not map a category, then ask another question.
If Gemini accidentally suggests an already-mapped category, the system will show an error and continue to next question.
After mapping all 8 categories:
- Completion modal shows "🎉 Congratulations!!!"
-
- FAB becomes disabled
- Can tap "Dismiss" to view final dashboard
- Can tap "Reset" FAB to clear and start over
Tap any mapped (purple border) category card to see an alert with Gemini's justification for why you have that trait.
Tap red "Reset" FAB → confirmation alert → clears all data and returns to 0/8.
- Same Gemini API key in
.env - Uses
gemini-2.5-flashmodel (updateMODEL_NAMEingeminiService.tsif needed) - Requires JSON response format support
- Network connection required for:
- Question synthesis (~2-5 seconds)
- Answer mapping (~2-5 seconds)
- UI: React Native Paper components instead of CSS/HTML
- Storage: AsyncStorage instead of localStorage
- Modals: React Native Modal component instead of CSS overlays
- FABs: Paper FAB components with icons
- No real-time prefetch display: Web shows small spinner during prefetch; mobile just prepares silently
This is a complete architectural shift from the previous version:
- Old: Single activity → immediate multi-skill identification → results screen
- New: Iterative dialogue → one category at a time → gradual profile building
The old screens (Home, VoiceAnalysis, TextAnalysis, ResultScreen, SkillsDashboard) still exist but are no longer in the main flow. You can:
- Keep them for reference
- Delete them if not needed
- Create a settings menu to toggle between "Dialogue Mode" and "Analysis Mode"
- Add category-specific stamp images
- Show conversation history on dashboard
- Export skills passport as PDF/image
- Social sharing of completed passport
- Onboarding tutorial explaining the dialogue flow
- Settings to choose between dialogue mode vs. quick analysis mode