Skip to content

CRA から Next.js 15 (App Router) + TypeScript + Tailwind v4 に移行#15

Merged
angurodon merged 1 commit into
developfrom
feature/migrate-to-nextjs
May 4, 2026
Merged

CRA から Next.js 15 (App Router) + TypeScript + Tailwind v4 に移行#15
angurodon merged 1 commit into
developfrom
feature/migrate-to-nextjs

Conversation

@angurodon

Copy link
Copy Markdown
Owner

CRA は 2025-02-14 に React チームが正式に非推奨化しているため、現行の推奨フレームワークへ刷新する。 あわせて手動デプロイで属人化していた運用を GitHub Actions の CI/CD に置き換える。

主な変更:

  • フレームワーク: react-scripts 5 → next 15 / react 19 / TypeScript 5
  • スタイル: 各コンポーネントの個別 CSS → Tailwind CSS v4 (@import "tailwindcss" + @theme)
  • 配信: SPA → output: 'export' + trailingSlash: true で SSG(CloudFront の Custom Error Response 不要に)
  • ルーティング: react-router-dom → Next.js App Router (app//page.tsx)
  • SEO: 各 page.tsx に metadata、app/sitemap.ts と app/robots.ts を追加
  • CI/CD: .github/workflows/ci.yml (PR 検証) と deploy.yml (prod push で S3 sync + CloudFront invalidation, OIDC で IAM Role assume)
  • 整理: src/Gabage/, i18next/react-scroll/gh-pages 等の死蔵依存、homepage フィールドを削除
  • 画像: src/assets → public/images/、next/image 経由で参照
  • ブランド: <title>Ic-Growth</title> をメタデータで復元(favicon 素材は受領後差し替え)

CLAUDE.md は新スタックとデプロイ手順、ブランチ運用 (develop / main / prod) に書き換え。

CRA は 2025-02-14 に React チームが正式に非推奨化しているため、現行の推奨フレームワークへ刷新する。
あわせて手動デプロイで属人化していた運用を GitHub Actions の CI/CD に置き換える。

主な変更:
- フレームワーク: react-scripts 5 → next 15 / react 19 / TypeScript 5
- スタイル: 各コンポーネントの個別 CSS → Tailwind CSS v4 (@import "tailwindcss" + @theme)
- 配信: SPA → output: 'export' + trailingSlash: true で SSG(CloudFront の Custom Error Response 不要に)
- ルーティング: react-router-dom → Next.js App Router (app/<route>/page.tsx)
- SEO: 各 page.tsx に metadata、app/sitemap.ts と app/robots.ts を追加
- CI/CD: .github/workflows/ci.yml (PR 検証) と deploy.yml (prod push で S3 sync + CloudFront invalidation, OIDC で IAM Role assume)
- 整理: src/Gabage/, i18next/react-scroll/gh-pages 等の死蔵依存、homepage フィールドを削除
- 画像: src/assets → public/images/、next/image 経由で参照
- ブランド: <title>Ic-Growth</title> をメタデータで復元(favicon 素材は受領後差し替え)

CLAUDE.md は新スタックとデプロイ手順、ブランチ運用 (develop / main / prod) に書き換え。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@angurodon
angurodon merged commit 11a766c into develop May 4, 2026
1 check passed
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.

2 participants