📄
概念 📚 beginner-stepup

カリキュラム全体マップ(Week × 教材 × 参照ブランチ × 要求チェックリスト)

24週のカリキュラムで「そのWeekに何を読み、どのブランチのコードを参照し、どの要求項目を達成するか」を一覧するピボットマップ

このカリキュラムは3つの成果物が連動することで成り立ちます。

  1. 教材: このサイト上の b01b24 シリーズ(概念・理論・実装パターン)
  2. 参照コード: メンター側リポジトリ fullstack_typescript_curriculumreference/week-N ブランチ(各 Week 終了時点の「お手本」)
  3. 要求チェックリスト: リポジトリ直下の checklist.yml(Must 13項目 + Nice-to-have 9項目)

各 Week のセッションに入る前に、本ページで「今週読む教材」「参照するコード」「達成すべき要求項目」をまとめて把握してください。


カリキュラム全体像(24週)

Month 1 (W1-4)   基礎ツアー(SNS clone を題材)
Month 2 (W5-8)   自前アプリの要求→要件→設計
Month 3 (W9-12)  自前アプリのフロント実装
Month 4 (W13-16) 自前アプリのバック・DB・認証
Month 5 (W17-20) AWS デプロイ
Month 6 (W21-24) CI/CD・テスト・セキュリティ・最終デモ

Month 1: 基礎ツアー(Week 1-4)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W1開発環境ゼロスタート(Windows)+ Git/GitHub 基礎b01b-windows-setup-zero(Windows 受講者はこれを最優先) / b00-env-setup / b01 / b02 / b03 / b04 / b21reference/week-1N8, N9
W2Web全体像 + フロントb05 / b08 / b09 / b10 / b11 / b12reference/week-2M2(一覧UI)
W3バック + DB + 認証b06 / b07 / b13 / b14 / b15 / b16reference/week-3M1, M2, M3, M9, M10, M11
W4インフラ概念 + テスト + Claude Codeb00-target-infrastructure / b17 / b18 / b19 / b20 / b22 / b23reference/week-4全 Must の土台

Month 1 Tobe: SNS clone がローカルで動き、PR ベースの開発フローに慣れ、11トピック全てに一度触れた状態。

Week 1 の注記(Windows 受講者)

Week 1 はコードを書く前に 環境構築を完了させることが主目的です。本カリキュラムは以下の方針です。

  • Week 1-2: Git Bash のみ(WSL2 不要)で Node.js / pnpm / React を扱う
  • Week 3 以降: Docker が必要になったタイミングで WSL2 + Docker Desktop を追加導入

初回 PR は「README の受講者欄に自分の名前を追記する」程度の軽い内容で、PR ワークフローに慣れることを優先します。


Month 2: 要求→要件→設計(Week 5-8)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W5要求ヒアリングb05-requirements-elicitationreference/week-5—(要件抽出のみ)
W6画面ワイヤーb05b-wireframingreference/week-6—(設計のみ)
W7ER図 + API 仕様b07-er-diagram / b07b-api-specreference/week-7—(設計のみ)
W8プロジェクト初期化b11 / b13 / b15(再読)reference/week-8自前アプリ骨格ができる

Month 2 Tobe: 自前アプリの要件が1枚で書け、ER図と API 仕様書ドラフトが完成し、kinoshita/main に骨格コードがマージされている。


Month 3-4: 自前アプリ実装(Week 9-16)

Month 3: フロント完成(W9-12)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W9画面スケルトンb11 / b14(再読)reference/week-9M2(一覧)
W10コンポーネント分解b11 / b12reference/week-10M3(詳細)
W11フォーム検証b12b-form-validationreference/week-11M1(作成)
W12Tailwind仕上げ + ルーティングb08 / b14reference/week-12M2, M3

Month 4: バック・DB・認証(W13-16)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W13Hono 全ルート実装b13(再読) + b14-error-handlingreference/week-13M1-M8
W14JWT 認証 + 認可b07 拡充版reference/week-14M9, M10, M11
W15Drizzle リレーションb15 拡充版reference/week-15M4-M8(フォロー/リアクション)
W16統合テスト + E2E 動作確認b20 拡充版reference/week-16Must 80%

Month 3-4 Tobe: 自前アプリの Must 80% がローカルで E2E 動作する。


Month 5: AWS デプロイ(Week 17-20)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W17ネットワーク基盤 + Budgetb17 拡充版 / b17-budget-alertreference/week-17M13(コスト)
W18Bastion + RDSb18-bastionreference/week-18M12 土台
W19Docker build + ECR push + EC2b19 拡充版 / b19-ecr-pushreference/week-19M12
W20CloudFront + S3 + 公開b20-cloudfront-s3-albreference/week-20M12(URL 公開)

Month 5 Tobe: https://xxx.cloudfront.net で自前アプリが公開されている。


Month 6: 運用・テスト・CI/CD・最終デモ(Week 21-24)

Weekテーマ読む教材参照ブランチ関連 checklist 項目
W21CI/CD 自動デプロイb19 拡充版reference/week-21自動化
W22E2E テスト拡張b22-playwright / b20 拡充版reference/week-22N7(E2E)
W23セキュリティ診断 + ログb23-trivy / b23-cloudwatch-logsreference/week-23N7(Trivy)
W24最終デモ + 修了b24-portfolio-pdfreference/week-24Must 80%+, N9

Month 6 Tobe: main push → 自動デプロイが回り、Trivy で Critical/High ゼロ、README に6ヶ月の成長エッセイ、PDF ポートフォリオが生成されている。


ブランチ戦略(H-3 = 3 層統合型)

リポジトリは 3 層のブランチで運用されます。

kinoshita/main                    ← 週次評価を通ったものだけ入る(ポートフォリオ本体)
  └── kinoshita/week-N            ← Week N の統合ブランチ(step PR のマージ先)
        ├── feature/kinoshita-week<N>-<slug>   ← step PR(1 PR = 1 論理変更)
        └── ...
reference/week-N                  ← メンター側の「お手本」(受講者は read-only)

PR フロー(2 段階)

段階ブランチbaseタイミング
step PRfeature/kinoshita-week<N>-<slug>kinoshita/week-<N>Week 中に複数本
週次統合 PRkinoshita/week-<N>kinoshita/mainWeek 終了時・1 本のみ

merge 後も kinoshita/week-<N> は残します(後からの追跡・PDF 生成で利用)。


参照ブランチの読み方

reference/week-N ブランチは 累積的スナップショット です。week-Nweek-(N-1) の全内容を含み、かつ Week N で新規追加される差分を足したものです。

# 初回 clone は kinoshita/main だけを取得(main や arch/ddd 等は取らない)
git clone --single-branch --branch kinoshita/main \
  git@github.com:subaru-hello/fullstack_typescript_curriculum.git
cd fullstack_typescript_curriculum

# 必要なブランチ種別だけ tracking を追加
git remote set-branches --add origin 'kinoshita/week-*'
git remote set-branches --add origin 'reference/week-*'
git fetch origin

# Week 3 のお手本コードを取得
git checkout reference/week-3

# Week 2 と Week 3 の差分を確認(Week 3 で何が追加されたか)
git diff reference/week-2 reference/week-3 -- api/

自分の PR レビュー用:

# 自分の feature/kinoshita-week3-* を reference/week-3 と比較
git diff reference/week-3 feature/kinoshita-week3-hono-setup

# 週の統合ブランチ全体を reference と比較
git diff reference/week-3 kinoshita/week-3

要求チェックリスト(checklist.yml)との対応

要求ID内容最も関連する Week
M1投稿の作成W3, W11, W13
M2投稿一覧の表示W3, W9
M3投稿詳細の表示W3, W10
M4リアクションの付与W13, W15
M5リアクションの取消W13, W15
M6ユーザーのフォローW13, W15
M7ユーザーのアンフォローW13, W15
M8フォロー関係の確認W13, W15
M9ユーザー認証W3, W14
M10認可制御W3, W14
M11機密情報の保護W3, W14
M12クラウドデプロイW17-W20
M13コスト制限W17
N1検索機能任意
N2ユーザープロフィールW10-W12
N3コメント・返信W13
N4画像投稿任意
N5通知機能任意
N6フォローフィードW13
N7セキュリティ診断W22, W23
N8Git履歴追跡全 Week
N9AIツール記録全 Week, W24

各 Week のセッション前チェックリスト

セッション前に以下を確認してください。

  1. ☐ 該当 Week 行の「読む教材」を全て読んだか
  2. ☐ 参照ブランチ reference/week-N をローカルで clone し、pnpm dev で起動確認したか
  3. ☐ 前回の feature/kinoshita-week(N-1)-* PR がマージされているか
  4. checklist.yml の関連項目を CLEAR に更新できる状態か(evidence を用意)
  5. ☐ Slack で今週の GitHub Issue が届いているか

関連資料

  • メンター側リポジトリ: subaru-hello/fullstack_typescript_curriculum
  • カリキュラムシラバス(メンター版): docs/curriculum.md
  • 要求チェックリスト(テンプレート): checklist.yml
  • 週次課題テンプレ: docs/weekly-template.md
  • 評価ルーブリック: docs/evaluation-rubric.md
  • 要求ヒアリングワークシート: docs/client-app-intake.md
  1. 1. 📄環境構築の段階的導入(macOS / Windows)
  2. 2. 📄SNSアプリの最終インフラ構成図
  3. 3. 📄SNSクローンの全体設計(Month 1 ゴール)
  4. 4. 📄カリキュラム全体マップ(Week × 教材 × 参照ブランチ × 要求チェックリスト)
  5. 5. 📄このカリキュラムの使い方(SQL・Python・Dify経験者向け)
  6. 6. 📄シェル・ターミナル基礎
  7. 7. 📄Windows で完全にゼロから始める開発環境構築(Week 1)
  8. 8. 📄Git基礎
  9. 9. 📄GitHubワークフロー
  10. 10. 📄パッケージ管理(pnpm workspace)
  11. 11. 📄Webアプリアーキテクチャ全体像
  12. 12. 📄要求ヒアリングとユーザーストーリー(Month 2 Week 5)
  13. 13. 📄画面ワイヤーフレームと画面遷移図(Month 2 Week 6)
  14. 14. 📄HTTP・REST API基礎
  15. 15. 📄ER 図の描き方(Month 2 Week 7)
  16. 16. 📄認証・認可のパターン
  17. 17. 📄REST API 仕様書の書き方(Month 2 Week 7)
  18. 18. 📄HTML/CSS基礎とレイアウト
  19. 19. 📄JavaScript基礎(Pythonとの対比)
  20. 20. 📄TypeScript基礎(型システムとPythonとの対比)
  21. 21. 📄Reactコンポーネント設計の基礎
  22. 22. 📄状態管理の概念
  23. 23. 📄フォーム検証(React Hook Form + Zod)(Month 3 Week 11)
  24. 24. 📄バックエンドAPI設計(Hono)
  25. 25. 📄ルーティング(React Router v7)
  26. 26. 📄Hono のエラーハンドリング(Month 4 Week 13)
  27. 27. 📄データベース設計・SQL→Drizzle ORM対応
  28. 28. 📄マイグレーションの考え方
  29. 29. 📄AWSインフラ基礎
  30. 30. 📄AWS Budget Alert の設定(Month 5 Week 17)
  31. 31. 📄環境変数管理
  32. 32. 📄Bastion EC2 と SSH ProxyJump(Month 5 Week 18)
  33. 33. 📄CI/CD基礎
  34. 34. 📄ECR への Docker イメージ push と App EC2 デプロイ(Month 5 Week 19)
  35. 35. 📄テスト設計の基本
  36. 36. 📄CloudFront + S3 + ALB で公開する(Month 5 Week 20)
  37. 37. 📄CLAUDE.md・プロジェクト設定
  38. 38. 📄PR レビュー 5 観点ルーブリック(全 Week 共通)
  39. 39. 📄タスク分解・仕様の書き方
  40. 40. 📄Playwright で E2E テスト(Month 6 Week 22)
  41. 41. 📄生成コードのレビュー・デバッグの勘所
  42. 42. 📄Trivy で脆弱性スキャン(Month 6 Week 23)
  43. 43. 📄CloudWatch Logs の読み方と運用(Month 6 Week 23)
  44. 44. 📄PDF ポートフォリオの自動生成(Month 6 Week 24)