Architecture
Serverless AWS, single-table DynamoDB. See ADR 0001 in docs/adr/.
- Frontend — Next.js 15 on Amplify Hosting (SSR).
- API — FastAPI on Lambda (arm64 container image) behind API Gateway HTTP API.
- Store — DynamoDB single-table (pk/sk + 2 GSIs, PAY_PER_REQUEST, PITR).
- Auth — Cognito user pool with admin/editor/viewer groups.
- Attachments — S3 + CloudFront (OAC).
- Search — JSON inverted index in S3, lazy-loaded by the app Lambda, rebuilt by the sync Lambda.
- Sync — EventBridge schedule fires the sync Lambda every 5 minutes.
No VPC, no NAT, no RDS — see obsidian-sync for how the vault round-trip works.
Related: home · #meta #architecture