Skip to content

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.

ToolMinimum versionVerify commandWalkthrough usage
AWS CLIv2aws —versionDeploy verification, SQS/S3/Lambda checks, SNS subscribe
Terraform
HashiCorp Terraform — provisions all platform infrastructure through five modules in `terraform/`.
1.6+terraform —versionFull infrastructure provisioning
Node.js20+node —version

Portal build, Amplify
AWS Amplify — hosts the Vite portal SPA. This walkthrough deploys via manual zip upload (no Git connection required).
deploy, unit tests

npmbundled with Nodenpm —versionPortal dependencies and build
Python3.14+python3 —version

Lambda
AWS Lambda — serverless compute for ingest-sync, query-api, reprocess-api, and the processor container image.
service development and local testing

Dockerwith buildxdocker buildx version

Mirror processor image to ECR
Amazon Elastic Container Registry — stores the mirrored processor Lambda container image at deploy time.
via sync-processor-image.sh

curlany recentcurl —versionREST API verification
zipany recentzip —versionAmplify manual deploy packaging

Run this block from any directory to confirm all tools are available:

Terminal window
aws --version
terraform --version
node --version
npm --version
python3 --version
docker buildx version
curl --version
zip --version

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

All Terraform commands in this walkthrough use the demo repo root as the working directory:

Terminal window
git clone https://github.com/jajera/event-driven-serverless-platform-demo.git
cd event-driven-serverless-platform-demo
# Example — init from repo root, not from terraform/
terraform -chdir=terraform init

Continue to System Overview or start deploying with Terraform Init.