Repository navigation
Home
Terraform for running ReportMate on AWS. The root module wires eleven submodules together into a single deployment: a VPC, an RDS PostgreSQL instance, two ECS Fargate services behind an Application Load Balancer, ECR repositories for the images, Secrets Manager entries, a Cognito user pool, an API Gateway WebSocket API, a scheduled maintenance task, and CloudWatch logging with SNS alerting.
This repo provisions infrastructure only. It does not build container images — the API and frontend images come from the application repos and are pushed to the ECR repositories this module creates.
-
Prerequisites — what you need before
terraform init - Getting-Started — bootstrap the state backend, apply, push images
- Architecture — how the pieces fit and how a request flows
- Inputs — every root input variable
- Outputs — every root output
- Submodules — every submodule variable and output
- Resources — every AWS resource the module creates
- State-and-Backends — the S3 + DynamoDB backend and the bootstrap module
- Azure-vs-AWS — honest comparison of the two deployment modules
- Troubleshooting — failure modes visible in the code
| Repo | What it is | Wiki |
|---|---|---|
| reportmate-api | FastAPI ingest + query backend | wiki |
| reportmate-app-web | Next.js dashboard | wiki |
| reportmate-client-win | Windows agent (C# / .NET) | wiki |
| reportmate-client-mac | macOS agent | wiki |
| reportmate-cli | Cross-platform admin CLI | wiki |
| reportmate-mcp | MCP server exposing the fleet to AI agents | wiki |
| terraform-azurerm-reportmate | Azure deployment module | wiki |
| terraform-aws-reportmate | AWS deployment module (this repo) | wiki |
| selfhosted-docker-reportmate | Docker Compose stack + Packer appliance | wiki |
| reportmate-website | Marketing site, reportmate.app |
The API task runs the image published by reportmate-api
(ghcr.io/reportmate/reportmate-api, mirrored into ECR); the frontend task runs
a dashboard image built from reportmate-app-web. The API serves its routes
under /api/v1 (health check: /api/v1/health), and the ALB forwards
/api/v1/* to it. Agents on your endpoints point at the ALB hostname, or at
your own hostname in front of it.
The AWS module is newer and less exercised than the Azure one. If you want the most complete ReportMate deployment today, read Azure-vs-AWS before choosing.
MIT licensed. — reportmate.app