Tools and Accounts
Before cloning the event-driven-serverless-platform-demo, confirm your local toolchain and AWS
Amazon Web Services — cloud platform for ingest, processing, storage, API, and portal hosting in this walkthrough. account access. All Terraform
HashiCorp Terraform — provisions all platform infrastructure through five modules in `terraform/`. commands in this walkthrough run from the demo repository root with -chdir=terraform.
Required tools
Section titled “Required tools”| Tool | Minimum version | Verify command | Walkthrough usage |
|---|---|---|---|
| AWS CLI | v2 | aws —version | Deploy verification, SQS/S3/Lambda checks, SNS subscribe |
| Terraform HashiCorp Terraform — provisions all platform infrastructure through five modules in `terraform/`. | 1.6+ | terraform —version | Full infrastructure provisioning |
| Node.js | 20+ | node —version | Portal build, Amplify |
| npm | bundled with Node | npm —version | Portal dependencies and build |
| Python | 3.14+ | python3 —version | Lambda |
| Docker | with buildx | docker buildx version | Mirror processor image to ECR |
| curl | any recent | curl —version | REST API verification |
| zip | any recent | zip —version | Amplify manual deploy packaging |
Verify your toolchain
Section titled “Verify your toolchain”Run this block from any directory to confirm all tools are available:
aws --versionterraform --versionnode --versionnpm --versionpython3 --versiondocker buildx versioncurl --versionzip --versionAWS account permissions
Section titled “AWS account permissions”Your AWS credentials need permission to create and manage resources in the target region (default ap-southeast-2):
- S3 — Data lake bucket, object read/write, notifications
- Lambda — Functions, event source mappings, container images
- IAM — Roles and policies for Lambdas, Scheduler, API Gateway
- SQS — Standard queues and dead-letter queues
- DynamoDB — Jobs table
- API Gateway — REST API and stage deployment
- Amplify — App hosting and branch deploy
- EventBridge Scheduler — Schedule and execution role
- CloudWatch — Alarms, dashboard, logs
- ECR — Repository for processor container image
- SNS — Alarm notification topic
Terraform working directory
Section titled “Terraform working directory”All Terraform commands in this walkthrough use the demo repo root as the working directory:
git clone https://github.com/jajera/event-driven-serverless-platform-demo.gitcd event-driven-serverless-platform-demo
# Example — init from repo root, not from terraform/terraform -chdir=terraform initNext step
Section titled “Next step”Continue to System Overview or start deploying with Terraform Init.