Pular para o conteúdo

Guia de Início Rápido

Este guia orienta você pelos conceitos básicos de instalação e uso do @aws/nx-plugin para construir projetos rapidamente na AWS.

As seguintes dependências globais são necessárias antes de prosseguir:

  • Git
  • Node >= 22 (Recomendamos usar algo como NVM para gerenciar suas versões do node)
    • verifique executando node --version
  • UV >= 0.5.29
    1. instale o Python 3.14 executando: uv python install 3.14
    2. verifique com uv python list --only-installed

Crie um workspace Nx com o gerenciador de pacotes de sua escolha e abra o diretório que ele cria:

Crie seu workspace@aws/nx-workspace

pnpm create @aws/nx-workspace my-project
Monte seu comando3

Obrigatório

Janela do terminal
cd my-project

Você será solicitado a escolher seu provedor de infraestrutura como código, seja CDK ou Terraform.

Vamos construir uma aplicação full-stack: uma API tRPC, um website React, autenticação Cognito e infraestrutura CDK ou Terraform. Peça a um assistente de IA para estruturá-la para você, ou execute os geradores você mesmo — ambas as rotas chegam ao mesmo workspace.

  1. Abra o workspace em seu assistente de codificação de IA.

    Novos workspaces vêm com o servidor MCP do plugin já configurado para Kiro, Claude Code, Cursor, Gemini CLI, GitHub Copilot e OpenAI Codex, então seu assistente pode consultar os geradores do plugin e executá-los sem nenhuma configuração.

  2. Peça pela aplicação:

    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.

    Seu assistente descobre os geradores através do servidor MCP e os executa, na ordem que suas dependências precisam. Revise as alterações que ele faz e então continue no Passo 3.

Execute os geradores que estruturam a aplicação. Use o botão abaixo para copiá-los todos, ou execute cada um você mesmo conforme descrito abaixo do diagrama.

Loading the diagram…

Dependendo do tipo de projeto que você está construindo, você pode escolher qualquer combinação de geradores para inicializar rapidamente seu projeto. Confira os Geradores na barra de navegação à esquerda para ver a lista completa de opções, ou experimente o construtor de grafos para construir seu workspace visualmente.

Execute este gerador@aws/nx-plugin:ts#api

pnpm nx g @aws/nx-plugin:ts#api --no-interactive
Opções desta etapa2

Obrigatório

Isso criará a API dentro da pasta packages/demo-api.

Execute este gerador@aws/nx-plugin:ts#website

pnpm nx g @aws/nx-plugin:ts#website --no-interactive
Opções desta etapa1

Obrigatório

Isso estrutura um novo website React em packages/demo-website.

Execute este gerador@aws/nx-plugin:ts#website#auth

pnpm nx g @aws/nx-plugin:ts#website#auth --no-interactive
Opções desta etapa1

Obrigatório

Isso configura a infraestrutura necessária e o código React para adicionar Autenticação Cognito ao seu website.

Execute este gerador@aws/nx-plugin:connection

pnpm nx g @aws/nx-plugin:connection --no-interactive
Opções desta etapa2

Obrigatório

Obrigatório

Isso configura os provedores necessários para garantir que seu website possa chamar sua API tRPC.

Adicione o projeto de infraestrutura com base no seu provedor IAC escolhido.

Execute este gerador@aws/nx-plugin:ts#infra

pnpm nx g @aws/nx-plugin:ts#infra --no-interactive
Opções desta etapa1

Obrigatório

Isso configura uma CDK App que você pode usar para implantar sua infraestrutura na AWS.

Use o seguinte comando para iniciar servidores de desenvolvimento locais para seu website e suas APIs conectadas:

Terminal window
pnpm dev

Seu website estará disponível em http://localhost:4200.

As alterações em seu website e API serão refletidas em tempo real, pois tanto o website local quanto os servidores de API farão hot-reload.

Experimente: chame a API do seu website

Passo 4: Definir Recursos na Nuvem e Implantar na AWS

Seção intitulada “Passo 4: Definir Recursos na Nuvem e Implantar na AWS”

Abra packages/infra/src/stacks/application-stack.ts e adicione o seguinte código:

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

Isso é todo o CDK que precisamos escrever para implantar nossa aplicação full stack.

Em seguida, execute o seguinte comando para construir seu projeto:

Terminal window
pnpm build

Faça o bootstrap da sua infraestrutura:

Terminal window
pnpm nx bootstrap infra

Implante seu projeto:

Terminal window
pnpm nx deploy-sandbox infra

Passo 5: Testar o Website com Recursos na Nuvem Implantados

Seção intitulada “Passo 5: Testar o Website com Recursos na Nuvem Implantados”
  1. Busque o arquivo runtime-config.json:

    Terminal window
    pnpm nx load-runtime-config demo-website
  2. Inicie o servidor de website local

    Terminal window
    pnpm nx serve demo-website

Seu website estará disponível em http://localhost:4200 e apontará para os recursos que você implantou para a API e autenticação.

Para fazer login, você precisará criar um usuário no user pool do Cognito.

Clique aqui para instruções usando a AWS CLI

Seu website também é servido pelo CloudFront. Abra o nome de domínio de distribuição (que é impresso no seu terminal após a implantação) para usar a versão executando inteiramente na AWS.

Parabéns! 🎉 Você construiu e implantou com sucesso uma aplicação full-stack usando @aws/nx-plugin!

Quando terminar, exclua os recursos que você implantou para evitar custos contínuos:

Terminal window
pnpm nx destroy-sandbox infra

Para remover os recursos de bootstrap, siga abaixo:

Exclua a stack de bootstrap em todas as regiões que você fez bootstrap, incluindo us-east-1. Isso remove as funções de bootstrap e o repositório de imagens de contêiner:

Janela do terminal
aws cloudformation delete-stack --stack-name CDKToolkit --region <region>

  • Dungeon Adventure Tutorial — construa um jogo de aventura de masmorra com IA full-stack, para um passo a passo mais aprofundado do que este guia.
  • Workspaces — como seu workspace está organizado e a configuração que os geradores compartilham.
  • Add to an Existing Project — adote o plugin em sua base de código existente.