How aws-solutions/dynamic-image-transformation-for-amazon-cloudfront works
This repository implements Dynamic Image Transformation for Amazon CloudFront: a request-driven service that fetches source images, applies transformations, and returns optimized images through CloudFront. Its principal workflow is image request → origin resolution and image processing → response; it also supports configuration of origins, mappings, and transformation policies through an authenticated admin UI. The README documents ECS and Lambda deployments (and a deprecated S3 Object Lambda option), plus CloudFront/S3 delivery. Several runtime and infrastructure files were not sampled, so uncertain internal call links are omitted.
Main entry points: app.ts ECS image service · image.ts Image route · request-resolver.service.ts Request resolution · transformation-resolver.service.ts Policy resolution
Components 21
Image delivery
- CloudFront
- ECS image service
source/container/src/app.ts - Image route
source/container/src/routes/image.ts - Request resolution
source/container/src/services/request-resolver/request-resolver.service.ts - Policy resolution
source/container/src/services/transformation-resolver/transformation-resolver.service.ts - Image processing
source/container/src/services/image-processing/image-processor.service.ts - Image origins
source/container/src/services/image-processing/origin-fetcher.ts - S3 or HTTP origin
- Runtime caches
source/container/src/services/cache/cache-registry.ts
Configuration API
- Management routes
source/management-lambda/routes.ts - Configuration services
source/management-lambda/services/index.ts - Configuration DAOs
source/management-lambda/dao/index.ts - Configuration table
source/constructs/lib/v8/constructs/dal/single-table-construct.ts
Admin UI
- Admin application
source/admin-ui/src/App.tsx - Configuration pages
source/admin-ui/src/pages/Origins.tsx - Admin API clients
source/admin-ui/src/services/originService.ts
Platform capabilities
- Lambda architecture
source/constructs/lib/back-end/api-gateway-architecture.ts - Operational metrics
source/metrics-utils/lib/query-builders.ts
Other components
- Image consumer
- Administrator
- Metrics endpoint
Connections 17
- Image consumer → CloudFront: requests images
- CloudFront → ECS image service: forwards requests
- ECS image service → Image route: dispatches routes
- Image route → Request resolution
- Request resolution → Policy resolution
- Policy resolution → Image processing
- Image processing → Image origins
- Image origins → S3 or HTTP origin: fetches source
- Administrator → Admin application: configures
- Admin application → Configuration pages: routes to
- Configuration pages → Admin API clients
- Admin API clients → Management routes: calls API
- Management routes → Configuration services: dispatches
- Configuration services → Configuration DAOs
- Configuration DAOs → Configuration table
- Lambda architecture → CloudFront: provides deployment option
- Operational metrics → Metrics endpoint: sends metrics