<role>
You are a senior mobile app engineer and Japanese-language education designer. Build a complete, production-quality mobile app called "Nihongo Path" that takes a learner from JLPT N5 to N2. Interface and support languages: English and Urdu (with full right-to-left support).
</role>
<tech_stack>
- React Native with Expo and TypeScript (one codebase for Android and iOS)
- Offline-first: SQLite for all lessons, progress, and spaced-repetition data
- Navigation: Expo Router, bottom tabs: Home, Learn, Practice, Progress, Settings
- Text-to-speech: expo-speech with the ja-JP voice
- Speech recognition: expo-speech-recognition (ja-JP) for speaking practice
- Handwriting: react-native-skia canvas with stroke-order data from KanjiVG
- Notifications: expo-notifications (daily reminder, default 9:00 PM, user can change)
- Urdu font: Noto Nastaliq Urdu. Japanese font: Noto Sans JP. Enable I18nManager RTL for Urdu text blocks.
- AI tutor (optional, online only): call Claude through MY OWN small backend proxy. Never put an API key inside the app. Make the model name a config value.
</tech_stack>
<content_rules>
- Every word, kanji, and sentence is shown in 4 lines: Japanese with furigana, Romaji, English, Urdu (RTL, natural everyday Urdu).
- Each level uses only the kanji and grammar of that level or lower.
N5 ~100 kanji / 800 words. N4 ~300 kanji / 1,500 words. N3 ~650 kanji / 3,700 words. N2 ~1,000 kanji / 6,000 words.
- The JLPT has no official word or kanji list. Use open datasets (JMdict, KANJIDIC2, KanjiVG, Tatoeba) and community level lists. Respect each license and add an Attribution screen in Settings.
- Store content as JSON files by level and unit, with fields: id, level, jp, furigana, romaji, en, ur, audioText, tags.
- Do not invent readings or meanings. Mark any uncertain item "needs review" instead of guessing.
- Create real content for all of N5 first, then N4 as a second pass. Make N3 and N2 import-ready with the same schema.
</content_rules>
<features>
1. ONBOARDING: language choice (English/Urdu/both), placement quiz, daily goal (10/20/30 min), reminder time.
2. KANA: hiragana and katakana charts, tap to hear, writing practice, quizzes.
3. DAILY LESSON (30-40 min): review 10 old items, 5 new words, 3 kanji, 1 grammar point, then writing, listening, speaking, and a 10-question quiz.
4. KANJI: meaning, on'yomi, kun'yomi, stroke count, animated stroke order, example words, and a trace-then-write-from-memory canvas with stroke checking.
5. WRITING: kanji tracing, typing practice with a romaji-to-kana keyboard, and sentence building by tapping word tiles.
6. LISTENING: TTS dialogues at normal and slow speed, dictation, 3 comprehension questions, and a toggle to show or hide text.
7. SPEAKING: roleplay scenes (shop, station, restaurant, office, hospital). The app speaks one side, the user answers by voice, and the app shows what it heard next to the target sentence with a match score and tips. Allow a type-instead option if recognition fails.
8. SPACED REPETITION: SM-2 algorithm. Wrong answers return sooner. A daily review queue badge on Home.
9. QUIZZES AND MOCK TESTS: weekly review test, and a full JLPT-style mock test at the end of each level (vocabulary and kanji, grammar, reading, listening). Pass mark 80% to unlock the next level.
10. PROGRESS: streak, words and kanji learned, accuracy by skill, weak-points list, and weekly charts.
11. AI TUTOR (online): chat practice that corrects my sentences, explains mistakes in English and Urdu, and role-plays conversations.
12. SETTINGS: show or hide furigana, romaji, English, Urdu, voice speed, dark mode, font size, reminder time, export and import progress backup.
</features>
<design>
- Clean, calm, mobile-first. Large tap targets, one main action per screen, thumb-friendly bottom navigation.
- Light and dark themes, high contrast, and comfortable large fonts for Japanese and Urdu.
- Smooth but light animations. Works well on low-end phones and small screens.
- Friendly progress feedback: XP, streaks, level badges, and short encouragement in English and Urdu.
</design>
<quality_rules>
- Work in the phases below. Finish and test each phase before the next.
- Write clean, typed, commented code with a clear folder structure (app, components, data, db, hooks, services, i18n, theme).
- Handle errors: no internet, no microphone permission, and TTS voice missing (show how to install the Japanese voice).
- Add unit tests for the SM-2 logic, quiz scoring, and level unlock rules.
- Never claim an audio or speech feature works if it was not tested. State what needs a real device test.
- Accessibility: screen-reader labels and scalable text.
</quality_rules>
<phases>
Phase 1: Project setup, theme, i18n (English/Urdu with RTL), database schema, navigation.
Phase 2: Onboarding, kana module, N5 content import, flashcards with SM-2.
Phase 3: Kanji module with stroke-order and writing canvas.
Phase 4: Listening and speaking modules.
Phase 5: Quizzes, mock tests, progress screens, notifications.
Phase 6: AI tutor via backend proxy, backup/export, polish, and Play Store / App Store build steps with EAS.
</phases>
<output_format>
At the start: show the folder structure, the database schema, and the data JSON format. Then build Phase 1 completely with all files and run instructions. After each phase, give: what was built, how to run and test it on my phone, known limits, and a short ask to continue to the next phase.
</output_format>
Begin with Phase 1 now.
No preview
Comments (0)
No comments yet. Be the first!
Sign in to leave a comment
Project Tasks
32 planning tasks
#1
Generate system requirement document
1m 17s0.2 cr used
Done
#2
Generate personas & user flows
0m 13s0.2 cr used
Done
#7
Create flow for Japanese Learner (N5–N2)
0m 11sCredits in parent
Done
#8
Create flow for AI Tutor Chat User (online)
0m 11sCredits in parent
Done
#9
Create flow for Content Maintainer / Importer
0m 10sCredits in parent
Done
#10
Landing
0m 50sCredits in subtasks
Paused
#30
Landing / Hero
0.85 cr needed
Paused
#31
Landing / Word Stack Card
0.85 cr needed
Paused
#32
Landing / Journey And Promise
0.85 cr needed
Paused
#33
Landing / Language Toggle
0.85 cr needed
Paused
#34
Landing / Begin Actions
0.85 cr needed
Paused
#11
Login
Credits in subtasks
Paused
#12
Home
Credits in subtasks
Paused
#13
Learn
Credits in subtasks
Paused
#14
Daily Lesson
Credits in subtasks
Paused
#15
Kana
Credits in subtasks
Paused
#16
Kanji
Credits in subtasks
Paused
#17
Writing
Credits in subtasks
Paused
#18
Practice
Credits in subtasks
Paused
#19
Listening
Credits in subtasks
Paused
#20
Speaking
Credits in subtasks
Paused
#21
Tests
Credits in subtasks
Paused
#22
Progress
Credits in subtasks
Paused
#23
AI Tutor
Credits in subtasks
Paused
#24
Settings
Credits in subtasks
Paused
#25
Attribution
Credits in subtasks
Paused
#26
Onboarding
Credits in subtasks
Paused
#27
Placement
Credits in subtasks
Paused
#28
Content Import
Credits in subtasks
Paused
#29
Sign Up
Credits in subtasks
Paused
#5
Architecture
0.2 cr needed
Paused
#6
Workspace task plan
0.2 cr needed
Paused
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No comments yet. Be the first!