Skip to content

feat(tutorial): split mesh tutorials into 3 step categories (Phase 1)#683

Merged
takaokouji merged 2 commits into
developfrom
feature/tutorial-mesh-recategorize
May 11, 2026
Merged

feat(tutorial): split mesh tutorials into 3 step categories (Phase 1)#683
takaokouji merged 2 commits into
developfrom
feature/tutorial-mesh-recategorize

Conversation

@takaokouji
Copy link
Copy Markdown

Summary

Phase 1 of the tutorial expansion roadmap (#682): split the single CATEGORIES.chatApp (which housed 9 decks = 3 steps × Lv1〜3) into 3 story-themed categories × 3 lv so the tipsLibrary surfaces the step axis and the lv axis as distinct dimensions.

  • New categories: meshStep1 ("メッセージを送ってみよう"), meshStep2 ("ふたりで会話しよう"), meshStep3 ("みんなで会話しよう")
  • Existing 9 deck IDs are preserved — only category: references and translations are updated
  • No new decks, no new images, no behavior change inside individual decks

Also lands the tutorial expansion roadmap (docs/tutorial/improvement-plan.md) covering Phase 1〜4 (Mesh / Ruby / Block / DNCL) and a working progress tracker (docs/tutorial/progress.md) for the multi-phase effort.

Changes

File Change
packages/scratch-gui/src/lib/libraries/tutorial-tags.js Remove CATEGORIES.chatApp, add meshStep1/2/3
packages/scratch-gui/src/components/library/library.jsx Update local messages mapping: remove chatApp label, add 3 new mesh-step labels
packages/scratch-gui/src/lib/libraries/decks/index.jsx Re-assign category: for 9 chat decks (chat-1-basic-{1,2,3} → meshStep1, chat-2-sprites-{1,2,3} → meshStep2, chat-3-mesh-{1,2,3} → meshStep3)
packages/scratch-gui/src/locales/{en,ja,ja-Hira}.js Add gui.library.meshStep1/2/3 translations, remove gui.library.chatApp
docs/tutorial/improvement-plan.md NEW — 4-phase design (Mesh / Ruby / Block / DNCL), setup foundation, puts-centric Ruby strategy, book promotion strategy with Lv0/Lv2/Lv3 numbering
docs/tutorial/progress.md NEW — progress tracker for the multi-phase rollout (to be deleted when all 4 phases ship)
tools/playwright-verify/verify-tutorial-mesh-categories.mjs NEW — Playwright script asserting 4 category titles render in tipsLibrary

Verification

bin/dx bash -c "cd packages/scratch-gui && npm run lint"
# → All matched files use Prettier code style!

cd tools/playwright-verify && node verify-tutorial-mesh-categories.mjs
# → [verify] category titles = ["始めましょう","メッセージを送ってみよう","ふたりで会話しよう","みんなで会話しよう"]
# → [verify] OK: all 3 mesh-step categories visible

Screenshot: tools/playwright-verify/tmp/tutorial-mesh-categories.png (gitignored).

Test plan

  • CI: lint, unit, integration
  • Manual: Open Welcome modal → "最初のチュートリアルを始める" → confirm 4 categories ("始めましょう" + 3 mesh-step) display in story order, each with 3 decks (Lv1/Lv2/Lv3)
  • Each deck still opens and progresses (no behavior regression — only category labels changed)
  • ja-Hira locale shows hiragana variants ("メッセージをおくってみよう" etc.)

Closes

Related

🤖 Generated with Claude Code

Mesh チュートリアル 9 deck を「メッセージを送ってみよう」「ふたりで会話しよう」
「みんなで会話しよう」の 3 カテゴリ × 3 lv 構成に再分類し、ステップ軸と Lv 軸の
2 軸構造を tipsLibrary 上で分かりやすく表示できるようにする。

- tutorial-tags.js: CATEGORIES.chatApp を削除、meshStep1/2/3 を追加
- library.jsx: local messages mapping を新カテゴリ 3 つに更新
- decks/index.jsx: 9 deck の category 参照を新キーに変更 (deck ID は維持)
- locales/{en,ja,ja-Hira}.js: gui.library.meshStep1/2/3 の翻訳を追加、
  廃止した gui.library.chatApp を削除

docs/tutorial/improvement-plan.md でチュートリアル全体の拡充計画
(Phase 1〜4: Mesh / Ruby / Block / DNCL) を文書化し、Phase 3 では書籍
プロモーション戦略 (Lv0/Lv2/Lv3 番号付けで Lv1 を「書籍を読んで理解する段階」
として空ける)、横断的な setup プロパティによるタブ・モード・拡張機能の
自動セットアップ機構などを設計判断として記録した。

docs/tutorial/progress.md は進捗トラッカー (全 Phase 完了時に削除予定)。

tools/playwright-verify/verify-tutorial-mesh-categories.mjs で
tipsLibrary に 3 カテゴリが想定通り表示されることを自動確認できる。

Refs: #678, #682

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

PR レビューでカテゴリの連続性が伝わらない指摘を受け、ストーリー型単独名から
共通プレフィックス「通信入門」+ 番号付きシリーズ名に変更。3 カテゴリが同じ
シリーズの段階的なステップであることを名前から一目で識別できるようにする。

カテゴリ表記:
- meshStep1: 通信入門 ① メッセージを送ってみよう
- meshStep2: 通信入門 ② ふたりで会話しよう
- meshStep3: 通信入門 ③ みんなで会話しよう (メッシュ)

合わせて Step 3 の Lv1 deck 名を「メッシュ拡張機能でつながろう」から
「メッシュでつながろう」に短縮し、Lv2 / Lv3 の表記と揃える。

- library.jsx, locales/{en,ja,ja-Hira}.js: 新カテゴリラベル / Lv1 deck 名
- tutorial-tags.js, decks/index.jsx: コメント表記の整合
- docs/tutorial/improvement-plan.md, progress.md: 命名理由を追記
- verify-tutorial-mesh-categories.mjs: 期待値を新表記に更新

Refs: #678, #682, #683

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@takaokouji takaokouji merged commit e42068c into develop May 11, 2026
9 checks passed
@takaokouji takaokouji deleted the feature/tutorial-mesh-recategorize branch May 11, 2026 01:42
github-actions Bot pushed a commit that referenced this pull request May 11, 2026
…ial-mesh-recategorize

feat(tutorial): split mesh tutorials into 3 step categories (Phase 1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(tutorial): Phase 1 - Mesh チュートリアルを 3 カテゴリ × 3 lv に再分類

1 participant