Skip to content

クイックスタートガイド

このガイドでは、@aws/nx-plugin をインストールして使用し、AWS 上でプロジェクトを迅速に構築するための基本を説明します。

続行する前に、以下のグローバル依存関係が必要です:

  • Git
  • Node >= 22 (NVM のようなツールを使用してノードバージョンを管理することをお勧めします)
    • node --version を実行して確認してください
  • UV >= 0.5.29
    1. uv python install 3.14 を実行して Python 3.14 をインストールします
    2. uv python list --only-installed で確認してください

ステップ 1: ワークスペースを作成する

Section titled “ステップ 1: ワークスペースを作成する”

お好みのパッケージマネージャーで Nx ワークスペースを作成し、作成されたディレクトリを開きます:

ワークスペースを作成@aws/nx-workspace

pnpm create @aws/nx-workspace my-project
コマンドを組み立てる3

必須

Terminal window
cd my-project

Infrastructure as Code プロバイダーとして CDK または Terraform のいずれかを選択するよう求められます。

ステップ 2: アプリケーションを構築する

Section titled “ステップ 2: アプリケーションを構築する”

フルスタックアプリケーションを構築します:tRPC API、React ウェブサイト、Cognito 認証、および CDK または Terraform インフラストラクチャです。AI アシスタントにスキャフォールドを依頼するか、ジェネレーターを自分で実行してください。どちらのルートでも同じワークスペースに到達します。

  1. AI コーディングアシスタントでワークスペースを開きます。

    新しいワークスペースには、プラグインの MCP サーバーが Kiro、Claude Code、Cursor、Gemini CLI、GitHub Copilot、OpenAI Codex 用にすでに設定されているため、アシスタントはセットアップなしでプラグインのジェネレーターを検索して実行できます。

  2. アプリケーションを依頼します:

    Prompt

    Create a tRPC API called demo-api, and a React website called demo-website. Add Cognito authentication to the website, connect the website to the API, and add an infrastructure project called infra. Then instantiate the generated infrastructure components so the website and API deploy, granting authenticated users access to the API.

    アシスタントは MCP サーバーを通じてジェネレーターを発見し、依存関係が必要とする順序で実行します。変更内容を確認してから、ステップ 3 に進んでください。

アプリケーションをスキャフォールドするジェネレーターを実行します。以下のボタンを使用してすべてをコピーするか、図の下に説明されているように各ジェネレーターを自分で実行してください。

Loading the diagram…

構築するプロジェクトのタイプに応じて、ジェネレーターの任意の組み合わせを選択して、プロジェクトを迅速にブートストラップできます。オプションの完全なリストについては、左側のナビゲーションバーの Generators を確認するか、グラフビルダーを試して、ワークスペースを視覚的に構築してください。

このジェネレーターを実行@aws/nx-plugin:ts#api

pnpm nx g @aws/nx-plugin:ts#api --no-interactive
このステップのオプション2

必須

これにより、packages/demo-api フォルダー内に API が作成されます。

このジェネレーターを実行@aws/nx-plugin:ts#website

pnpm nx g @aws/nx-plugin:ts#website --no-interactive
このステップのオプション1

必須

これにより、packages/demo-website に新しい React ウェブサイトがスキャフォールドされます。

このジェネレーターを実行@aws/nx-plugin:ts#website#auth

pnpm nx g @aws/nx-plugin:ts#website#auth --no-interactive
このステップのオプション1

必須

これにより、ウェブサイトに Cognito 認証を追加するために必要なインフラストラクチャと React コードが設定されます。

フロントエンドとバックエンドを接続する

Section titled “フロントエンドとバックエンドを接続する”

このジェネレーターを実行@aws/nx-plugin:connection

pnpm nx g @aws/nx-plugin:connection --no-interactive
このステップのオプション2

必須

必須

これにより、ウェブサイトが tRPC API を呼び出せるようにするために必要なプロバイダーが設定されます。

インフラストラクチャを追加する

Section titled “インフラストラクチャを追加する”

選択した IAC プロバイダーに基づいてインフラストラクチャプロジェクトを追加します。

このジェネレーターを実行@aws/nx-plugin:ts#infra

pnpm nx g @aws/nx-plugin:ts#infra --no-interactive
このステップのオプション1

必須

これにより、AWS にインフラストラクチャをデプロイするために使用できる CDK アプリが設定されます。

ステップ 3: ウェブサイトと API をローカルで実行する

Section titled “ステップ 3: ウェブサイトと API をローカルで実行する”

以下のコマンドを使用して、ウェブサイトと接続された API のローカル開発サーバーを起動します:

Terminal window
pnpm dev

ウェブサイトは http://localhost:4200 で利用できます。

ローカルウェブサイトと API サーバーの両方がホットリロードされるため、ウェブサイトと API の両方への変更がリアルタイムで反映されます。

試してみる: ウェブサイトから API を呼び出す

ステップ 4: クラウドリソースを定義して AWS にデプロイする

Section titled “ステップ 4: クラウドリソースを定義して AWS にデプロイする”

packages/infra/src/stacks/application-stack.ts を開き、以下のコードを追加します:

import {
DemoApi,
DemoWebsite,
UserIdentity,
} from '@my-project/common-constructs';
import { Stack, StackProps } from 'aws-cdk-lib';
import { Construct } from 'constructs';
export class ApplicationStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
const identity = new UserIdentity(this, 'identity');
const api = new DemoApi(this, 'api', {
integrations: DemoApi.defaultIntegrations(this).build(),
});
api.grantInvokeAccess(identity.identityPool.authenticatedRole);
new DemoWebsite(this, 'website');
}
}

これが、フルスタックアプリケーションをデプロイするために記述する必要のあるすべての CDK です。

インフラストラクチャをビルドしてデプロイする

Section titled “インフラストラクチャをビルドしてデプロイする”

次に、以下のコマンドを実行してプロジェクトをビルドします:

Terminal window
pnpm build

インフラストラクチャをブートストラップします:

Terminal window
pnpm nx bootstrap infra

プロジェクトをデプロイします:

Terminal window
pnpm nx deploy-sandbox infra

ステップ 5: デプロイされたクラウドリソースでウェブサイトをテストする

Section titled “ステップ 5: デプロイされたクラウドリソースでウェブサイトをテストする”
  1. runtime-config.json ファイルを取得します:

    Terminal window
    pnpm nx load-runtime-config demo-website
  2. ローカルウェブサイトサーバーを起動します

    Terminal window
    pnpm nx serve demo-website

ウェブサイトは http://localhost:4200 で利用でき、API と認証用にデプロイしたリソースを指します。

サインインするには、Cognito ユーザープールでユーザーを作成する必要があります。

AWS CLI を使用した手順についてはここをクリックしてください

ウェブサイトは CloudFront からも提供されます。デプロイ後にターミナルに表示されるディストリビューションドメイン名を開いて、完全に AWS 上で実行されているバージョンを使用してください。

おめでとうございます!🎉 @aws/nx-plugin を使用してフルスタックアプリケーションを正常に構築およびデプロイしました!

完了したら、継続的なコストを避けるためにデプロイしたリソースを削除します:

Terminal window
pnpm nx destroy-sandbox infra

ブートストラップリソースを削除するには、以下に従ってください:

us-east-1 を含む、ブートストラップしたすべてのリージョンでブートストラップスタックを削除します。これにより、ブートストラップロールとコンテナイメージリポジトリが削除されます:

Terminal window
aws cloudformation delete-stack --stack-name CDKToolkit --region <region>