Skip to content

cased/demo

Repository files navigation

Acme API

A sample API service for the Acme Corp platform. This application handles order processing, user management, and integrations with third-party services.

Architecture

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│   Load Balancer │────▶│   API Servers   │────▶│   PostgreSQL    │
│   (ALB)         │     │   (ECS/Fargate) │     │   (RDS)         │
└─────────────────┘     └─────────────────┘     └─────────────────┘
                               │
                               ▼
                        ┌─────────────────┐
                        │   Redis Cache   │
                        │   (ElastiCache) │
                        └─────────────────┘

Quick Start

# Install dependencies
npm install

# Set up environment
cp .env.example .env

# Run locally
npm run dev

# Run tests
npm test

API Endpoints

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

Environment Variables

Variable Description Default
PORT Server port 8080
DATABASE_URL PostgreSQL connection string -
REDIS_URL Redis connection string -
LOG_LEVEL Logging level info

Deployment

The application is deployed to AWS ECS using GitHub Actions. See .github/workflows/deploy.yml for the CI/CD pipeline.

Infrastructure

Infrastructure is managed with Terraform. See the terraform/ directory for configuration.

Monitoring

  • Metrics: Datadog
  • Logs: CloudWatch + Datadog
  • Alerts: PagerDuty

Team

  • Platform Team (@platform)
  • On-call: Check PagerDuty schedule

About

Demo application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published