Skip to content

matigaleanodev/portfolio-cloud

Repository files navigation

Portfolio Cloud

Read in Spanish

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.


Role In The Ecosystem

  • 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.

Main Lambdas

  • process-release
  • publish-chat-knowledge
  • generate-og
  • notify-post
  • subscribe
  • unsubscribe

Main Features

  • 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

Stack

  • TypeScript
  • AWS Lambda
  • AWS SAM
  • AWS SDK
  • Cloudflare R2
  • Resend
  • Vitest

Runtime Notes

  • process-release consumes .generated/release-manifest.json produced by portfolio.
  • publish-chat-knowledge consumes the editorial artifact generated by portfolio.
  • portfolio-api reads the canonical chat knowledge published by this repository.
  • This repository should not become the public API or frontend presentation layer.

Repository architecture details:


Local Development

npm install
npm run ci

Useful commands:

  • npm run build
  • npm run lint
  • npm test
  • npm run sam:validate
  • npm run sam:build

Environment setup is documented in .env.example.


Version

Current application version: 1.0.0