AWS Cloud Migrator is an AI-powered tool designed to act as a "Cloud Modernization Architect." It takes descriptions of legacy infrastructure (on-premise, virtual machines, old tech stacks) and proposes a modern, cloud-native AWS architecture.
The tool leverages AWS Bedrock (Anthropic Claude 3) to analyze input text, generate a React Flow diagram of the target architecture, provide a migration insights table, and even generate ready-to-use Terraform code.
viewer/: The React-based frontend application (Vite + React Flow + Typescript). The UI is structured into clean domains (components/,flow/,services/).infra/: Terraform configurations to deploy the entire stack on AWS.- S3 & CloudFront: Hosts the compiled static React application.
- Lambda Bedrock Proxy: A secure backend endpoint connecting to AWS Bedrock for AI generation, bypassing the need for client-side API keys.
- Lambda S3 Proxy: A serverless function saving your generated project sessions to a secure AWS storage archive bucket.
- Node.js (v22+)
- Your AWS infrastructure must be deployed at least once (see Deployment) in order to obtain the backend Lambda URLs.
-
Create a
viewer/.envfile and insert the endpoints provided by your Terraform output:VITE_BEDROCK_API_URL=https://...lambda-url.eu-west-2.on.aws/ VITE_LAMBDA_URL=https://...lambda-url.eu-west-2.on.aws/
-
Install dependencies:
cd viewer npm install -
Run the development server:
npm run dev
-
Open the application in your browser (usually
http://localhost:5173).
- Terraform (v1.7+)
- AWS CLI configured with credentials
-
Navigate to the infra directory:
cd infra -
Initialize and Apply Terraform:
terraform init terraform apply
Important: Take note of the
bedrock_api_urlandlambda_urloutputs. Ensure they are placed inviewer/.envbefore deploying the frontend.
After the infrastructure (Lambdas & S3/CloudFront) is ready and your .env is properly configured, build and sync the React app to your bucket.
From the viewer directory:
npm run deploy(This triggers deploy.sh which executes Vite build, uploads the bundle to your S3 Bucket, and invalidates the CloudFront cache automatically without blocking).
Access your application via the CloudFront URL outputted by Terraform.
- Architecture Generation: Describe your legacy infrastructure in the text area and click "Generate New Architecture".
- Interactive Diagram: The tool produces a visual Node mapping (VPC, Subnets, Fargate, RDS, etc.).
- Migration Insights: View legacy components mapped against modern AWS targets with specific strategies (Refactor, Replatform) and alternative suggestions.
- Iterative Chat: Modify the generated graph dynamically using the Chat prompt (e.g., "Add an SQS queue between the API and the Database").
- Generate Terraform: Click "View Terraform" to convert your current graph into functional
.tfcode blocks. - Save & History: Save your diagrams securely to your AWS Archive S3 Bucket, and load them later via the History panel.