A sample API service for the Acme Corp platform. This application handles order processing, user management, and integrations with third-party services.
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Load Balancer │────▶│ API Servers │────▶│ PostgreSQL │
│ (ALB) │ │ (ECS/Fargate) │ │ (RDS) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Redis Cache │
│ (ElastiCache) │
└─────────────────┘
# Install dependencies
npm install
# Set up environment
cp .env.example .env
# Run locally
npm run dev
# Run tests
npm test| Method | Endpoint | Description |
|---|---|---|
| GET | /health |
Health check |
| GET | /api/v1/orders |
List orders |
| POST | /api/v1/orders |
Create order |
| GET | /api/v1/orders/:id |
Get order details |
| GET | /api/v1/users |
List users |
| POST | /api/v1/users |
Create user |
| Variable | Description | Default |
|---|---|---|
PORT |
Server port | 8080 |
DATABASE_URL |
PostgreSQL connection string | - |
REDIS_URL |
Redis connection string | - |
LOG_LEVEL |
Logging level | info |
The application is deployed to AWS ECS using GitHub Actions. See .github/workflows/deploy.yml for the CI/CD pipeline.
Infrastructure is managed with Terraform. See the terraform/ directory for configuration.
- Metrics: Datadog
- Logs: CloudWatch + Datadog
- Alerts: PagerDuty
- Platform Team (@platform)
- On-call: Check PagerDuty schedule