Generate JLPT N5 reading passages (short or mid type) in JSON format. Use this skill when the user asks to create, generate, or produce N5 reading passages, comprehension texts, or reading questions. Handles the full pipeline: Japanese core content generation, 5-language translation, file saving, and optional Firebase upload. Trigger on requests like 'N5 okuma metni üret', 'create N5 reading passage', 'short passage oluştur', 'mid passage yaz', 'generate reading comprehension', 'JLPT N5 okuma sorusu oluştur'.
Generate N5-level reading passages (core Japanese + 5-language translations).
short (80–150 words, 1–2 questions) or mid (200–350 words, 2 questions). Default: short.references/json-schema.md for exact field specifications.references/n5-reading-guidelines.md for N5 vocabulary, grammar scope, and quality rules.backend/reading/data/n5_passages_{type}_core.json to find the last ID number. New passage ID = (next sequential number, zero-padded).n5_reading_{type}_{NNN}visual_type (notice, memo, letter, email, none).visual_type ≠ none: put context text in sentences, boxed content in framed_sentences. Otherwise: use only sentences.furigana: <ruby>漢字<rt>reading</rt></ruby> for every kanji word only.romaji in Modified Hepburn.is_correct: true per question.sentences + framed_sentences.backend/reading/data/n5_passages_{type}_core.json.jlpt-reading-passage-tester skill on the file. Fix any failures, re-run until all pass.sentences and framed_sentences) naturally and idiomatically.mining_text per sentence: localized grammar/chunk explanation + vocabulary list (see mining text headers in json-schema.md).backend/reading/data/n5_passages_{type}_translations_{lang}.json.python3 backend/reading/scripts/upload_passages_v2.py n5
Note: This uploads all N5 passages (short + mid). Existing passages are safely overwritten (Firestore uses set()); the new passage is added alongside them.