Software Toolkit
A Terraform scaffold that provisions serverless infrastructure, mocks APIs locally with AWS SAM and gives every developer their own sandbox per branch.
- Role
- Built it, lead the guild that owns it
- Where
- Storm Reply UK
- Stack
- Terraform, AWS SAM, Python, GitHub Actions
- Used by
- 20+ engineers

The problem
Setting up a new project used to take about two weeks before anyone wrote a feature: infrastructure, pipelines, environments and a way to test the API locally.
Every project started it again from scratch. Someone copied the Terraform from the last engagement, pulled out the parts that belonged to that client, and spent the first sprint getting a pipeline to deploy anything at all. By the end of it no two projects looked alike, so nothing learned on one of them moved to the next.
Testing infrastructure was the worse half. A Lambda behind API Gateway is awkward to exercise on a laptop, so the loop was to push a change, wait for the pipeline, and read CloudWatch. That is minutes of waiting to find a typo. And because everyone shared the same deployed environment, two people changing infrastructure at the same time meant one apply landing on top of the other, or a state lock held by whoever started first. The workaround was to take turns, which is a queue rather than a fix.
The toolkit makes the fixes the default. One scaffold, SAM for the local loop, and a stack per branch so nobody waits on anyone.
How it works
Scaffold the serverless basics
Twelve Terraform modules cover the building blocks of a serverless app, and a wizard scaffolds each new API endpoint so every project starts from the same shape.
Run the API locally
AWS SAM runs the API on your machine against the same Terraform code that deploys it.
A sandbox for every branch
The branch name is hashed into its own Terraform state, so anyone can run terraform apply from their laptop without touching anyone else's stack.
Keep it tidy
aws-nuke clears out abandoned sandboxes, and Checkov, tflint and pre-commit hooks run on every change.
Results
- to set up a new project
- 2 weeks → hours
- engineers use it
- 20+
- internal tool at Storm Reply UK
- Most used
It's also what the company's internal Promotion App, for goals and feedback, was built on.