Skip to content

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

Description

@takaokouji

概要

Phase 1: CATEGORIES.chatApp 1 つに収まっている 9 deck (3 ステップ × Lv1〜3) を 3 つの独立カテゴリ × 3 lv に再分類する。ユーザーから見て「ステップ軸」と「lv 軸」の 2 軸が分かりやすくなる。

設計詳細: docs/tutorial/improvement-plan.md Phase 1 セクション参照。

変更内容

新カテゴリ (ストーリー型命名)

  • meshStep1 — 「メッセージを送ってみよう」
  • meshStep2 — 「ふたりで会話しよう」
  • meshStep3 — 「みんなで会話しよう」

既存 9 deck の category 再割り当て

Deck 旧 category 新 category
chat-1-basic-{1,2,3} chatApp meshStep1
chat-2-sprites-{1,2,3} chatApp meshStep2
chat-3-mesh-{1,2,3} chatApp meshStep3

変更ファイル

  • packages/scratch-gui/src/lib/libraries/tutorial-tags.jsCATEGORIES から chatApp 削除、meshStep1/2/3 追加
  • packages/scratch-gui/src/lib/libraries/tag-messages.js — 新カテゴリの gui.libraryCategories.meshStep1/2/3 メッセージ追加
  • packages/scratch-gui/src/components/library/library.jsx[CATEGORIES.chatApp] の label mapping を削除、[CATEGORIES.meshStep1/2/3] を追加
  • packages/scratch-gui/src/lib/libraries/decks/index.jsx — 9 deck の category: 参照を新キーに更新
  • packages/scratch-gui/src/locales/{ja,ja-Hira,en}.js — 新メッセージ ID の翻訳追加

影響と非影響

  • 影響: チュートリアル一覧 (tipsLibrary) の表示でカテゴリ見出しが 3 つに分かれる
  • 非影響: deck ID (chat-1-basic-1 等)、urlId、deckIds ナビゲーション、画像、allowedBlocks は変更しない
  • 新規 deck: なし
  • 画像: なし

DoD

  • 5 ファイル更新 + 3 locale ファイル更新
  • npm run lint でエラー・警告ゼロ
  • tipsLibrary を開いて 3 カテゴリが「メッセージを送ってみよう」「ふたりで会話しよう」「みんなで会話しよう」の順で表示される
  • 各カテゴリ下に Lv1/Lv2/Lv3 が並ぶ
  • 各 deck を開いて step 進行が動く
  • docs/tutorial/progress.md に Phase 1 完了マーク

親 issue

このタスクは チュートリアル全体拡充 の一環。親 issue は別途作成。

関連資料

  • 全体設計: docs/tutorial/improvement-plan.md
  • 既存チュートリアル機能: docs/tutorial/README.md
  • チュートリアル開発ガイド: .claude/rules/scratch-gui/tutorial.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions