Serverless automation layer for the portfolio ecosystem.
This repository owns the AWS-side post-publication workflows, subscriber automation, OG generation, and canonical publication of the editorial chat knowledge.
portfolio: public frontend, static editorial content, and Firebase deployment.portfolio-api: minimal public API for dynamic user-facing flows.portfolio-cloud: AWS Lambda automation, subscriber persistence, release processing, notifications, and canonical editorial handoff.
process-releasepublish-chat-knowledgegenerate-ognotify-postsubscribeunsubscribe
- Release processing triggered after successful frontend deploys
- Canonical publication of chat knowledge artifacts to R2
- R2-backed subscriber persistence
- Blog notification delivery
- Open Graph asset generation for published content
- Shared runtime utilities and tests for cloud workflows
- TypeScript
- AWS Lambda
- AWS SAM
- AWS SDK
- Cloudflare R2
- Resend
- Vitest
process-releaseconsumes.generated/release-manifest.jsonproduced byportfolio.publish-chat-knowledgeconsumes the editorial artifact generated byportfolio.portfolio-apireads the canonical chat knowledge published by this repository.- This repository should not become the public API or frontend presentation layer.
Repository architecture details:
npm install
npm run ciUseful commands:
npm run buildnpm run lintnpm testnpm run sam:validatenpm run sam:build
Environment setup is documented in .env.example.
Current application version: 1.0.0