Architecture
PoolCzar Production Architecture
Static delivery (browser → CloudFront → S3) is separate from the application path (browser → API Gateway → Cognito JWT authorizer → Lambda). The three domains — tournament/rule composition, forums, and store — are deliberately separated: each Lambda group's IAM role is scoped only to the DynamoDB table it owns, so a bug or compromise in one domain can't read or write another's data. The store domain is the only one that talks to Stripe.
View case study →