Aller au contenu

Guide de démarrage rapide

Ce guide vous présente les bases de l’installation et de l’utilisation de @aws/nx-plugin pour créer rapidement des projets sur AWS.

Les dépendances globales suivantes sont nécessaires avant de continuer :

  • Git
  • Node >= 22 (Nous recommandons d’utiliser quelque chose comme NVM pour gérer vos versions de node)
    • vérifiez en exécutant node --version
  • UV >= 0.5.29
    1. installez Python 3.14 en exécutant : uv python install 3.14
    2. vérifiez avec uv python list --only-installed

Créez un espace de travail Nx avec le gestionnaire de paquets de votre choix, et ouvrez le répertoire qu’il crée :

Créez votre espace de travail@aws/nx-workspace

pnpm create @aws/nx-workspace my-project
Composez votre commande3

Requis

Fenêtre de terminal
cd my-project

Vous êtes invité à choisir votre fournisseur d’infrastructure en tant que code, soit CDK soit Terraform.

Nous allons construire une application full-stack : une API tRPC, un site web React, une authentification Cognito et une infrastructure CDK ou Terraform. Demandez à un assistant IA de la structurer pour vous, ou exécutez les générateurs vous-même — les deux approches aboutissent au même espace de travail.

  1. Ouvrez l’espace de travail dans votre assistant de codage IA.

    Les nouveaux espaces de travail sont livrés avec le serveur MCP du plugin déjà configuré pour Kiro, Claude Code, Cursor, Gemini CLI, GitHub Copilot et OpenAI Codex, afin que votre assistant puisse rechercher les générateurs du plugin et les exécuter sans aucune configuration.

  2. Demandez l’application :

    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.

    Votre assistant découvre les générateurs via le serveur MCP et les exécute, dans l’ordre requis par leurs dépendances. Examinez les modifications qu’il apporte, puis continuez à l’étape 3.

Exécutez les générateurs qui structurent l’application. Utilisez le bouton ci-dessous pour les copier tous, ou exécutez chacun vous-même comme décrit sous le diagramme.

Loading the diagram…

Selon le type de projet que vous construisez, vous pouvez choisir n’importe quelle combinaison de générateurs pour démarrer rapidement votre projet. Consultez les Générateurs dans la barre de navigation à gauche pour voir la liste complète des options, ou essayez le constructeur de graphe pour construire votre espace de travail visuellement.

Exécuter ce générateur@aws/nx-plugin:ts#api

pnpm nx g @aws/nx-plugin:ts#api --no-interactive
Options de cette étape2

Requis

Cela créera l’API dans le dossier packages/demo-api.

Exécuter ce générateur@aws/nx-plugin:ts#website

pnpm nx g @aws/nx-plugin:ts#website --no-interactive
Options de cette étape1

Requis

Cela génère un nouveau site web React dans packages/demo-website.

Exécuter ce générateur@aws/nx-plugin:ts#website#auth

pnpm nx g @aws/nx-plugin:ts#website#auth --no-interactive
Options de cette étape1

Requis

Cela configure l’infrastructure nécessaire et le code React pour ajouter l’authentification Cognito à votre site web.

Exécuter ce générateur@aws/nx-plugin:connection

pnpm nx g @aws/nx-plugin:connection --no-interactive
Options de cette étape2

Requis

Requis

Cela configure les fournisseurs nécessaires pour garantir que votre site web peut appeler votre API tRPC.

Ajoutez le projet d’infrastructure en fonction de votre fournisseur IAC choisi.

Exécuter ce générateur@aws/nx-plugin:ts#infra

pnpm nx g @aws/nx-plugin:ts#infra --no-interactive
Options de cette étape1

Requis

Cela configure une application CDK que vous pouvez utiliser pour déployer votre infrastructure sur AWS.

Étape 3 : Exécuter votre site web et votre API localement

Section intitulée « Étape 3 : Exécuter votre site web et votre API localement »

Utilisez la commande suivante pour démarrer les serveurs de développement locaux pour votre site web et ses API connectées :

Terminal window
pnpm dev

Votre site web sera disponible à l’adresse http://localhost:4200.

Les modifications apportées à votre site web et à votre API seront reflétées en temps réel, car les serveurs locaux du site web et de l’API se rechargeront automatiquement.

Essayez : appelez l'API depuis votre site web

Étape 4 : Définir les ressources cloud et déployer sur AWS

Section intitulée « Étape 4 : Définir les ressources cloud et déployer sur AWS »

Ouvrez packages/infra/src/stacks/application-stack.ts et ajoutez le code suivant :

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');
}
}

C’est tout le CDK dont nous avons besoin pour déployer notre application full-stack.

Ensuite, exécutez la commande suivante pour construire votre projet :

Terminal window
pnpm build

Initialisez votre infrastructure :

Terminal window
pnpm nx bootstrap infra

Déployez votre projet :

Terminal window
pnpm nx deploy-sandbox infra

Étape 5 : Tester le site web avec les ressources cloud déployées

Section intitulée « Étape 5 : Tester le site web avec les ressources cloud déployées »
  1. Récupérez le fichier runtime-config.json :

    Terminal window
    pnpm nx load-runtime-config demo-website
  2. Démarrez le serveur de site web local

    Terminal window
    pnpm nx serve demo-website

Votre site web sera disponible à l’adresse http://localhost:4200 et pointera vers les ressources que vous avez déployées pour l’API et l’authentification.

Pour vous connecter, vous devrez créer un utilisateur dans le pool d’utilisateurs Cognito.

Cliquez ici pour les instructions utilisant l'AWS CLI

Votre site web est également servi depuis CloudFront. Ouvrez le nom de domaine de sa distribution (qui est affiché dans votre terminal après le déploiement) pour utiliser la version fonctionnant entièrement sur AWS.

Félicitations ! 🎉 Vous avez réussi à construire et déployer une application full-stack en utilisant @aws/nx-plugin !

Lorsque vous avez terminé, supprimez les ressources que vous avez déployées pour éviter les coûts continus :

Terminal window
pnpm nx destroy-sandbox infra

Pour supprimer les ressources de bootstrap, suivez les instructions ci-dessous :

Supprimez la stack de bootstrap dans chaque région que vous avez initialisée, y compris us-east-1. Cela supprime les rôles de bootstrap et le référentiel d’images de conteneur :

Fenêtre de terminal
aws cloudformation delete-stack --stack-name CDKToolkit --region <region>

  • Dungeon Adventure Tutorial — construisez un jeu d’aventure de donjon IA full-stack, pour une présentation plus approfondie que ce guide.
  • Workspaces — comment votre espace de travail est organisé, et la configuration que les générateurs partagent.
  • Add to an Existing Project — adoptez le plugin dans votre base de code existante.