How this site actually works

One pipeline. Near-zero at low traffic.

AWSMindset is a personal field journal that publishes itself. EventBridge runs the RSS pipeline every morning, Amazon Bedrock prepares articles, and DynamoDB publishes them with automatic TTL retention. The stack uses serverless, pay-per-use AWS services.

Published

20

articles live

Retention

15 days

automatic TTL

Sources

9

RSS feeds active

Categories

4

content arcs

The pipeline

From RSS to reader, in five stages

Sources19FEEDSCron21×PER DAYAI rewrite3AIREWRITEDynamoDB420LIVE POSTSReader520PUBLISHEDTTL · 15 days

Tap any stage to see how it works.

Curated RSS feeds.

1. Sources

Nine engineering and AWS-focused feeds, ordered by editorial priority. AWS announcements and the AWS blog run first; Netflix, Meta, Pragmatic Engineer, React, web.dev, GitHub Blog, and Hacker News (filtered to 100+ points) fill the time budget.

rss-parserAWS What's NewAWS BlogsHacker News
Cost · Free · public RSS

The stack

Every tool, every cost

Twelve building blocks. Nothing exotic, nothing locked in. Everything picked for “stays free at this volume, swappable when it doesn't”.

Compute

  • Next.js 15

    App Router, RSC, ISR

    $0 · OSS
  • CloudFront + Lambda

    Edge hosting + Next.js compute

    Pay per use
  • Node 20

    Runtime for cron + OG image gen

    $0 · bundled

Data

  • DynamoDB

    Posts, subscribers, contact messages

    Pay per use
  • RSS feeds

    9 curated engineering sources

    $0 · public

AI

  • Amazon Bedrock

    Grounded fact packs + six editorial templates

    Usage based

Comms

Frontend

  • Tailwind v4

    CSS-first config, @theme tokens

    $0 · OSS
  • cmdk

    Command palette (⌘K)

    $0 · OSS
  • next/og

    Per-post OG images at the edge

    $0 · built-in
  • react-markdown

    GFM article rendering

    $0 · OSS

Pattern library

Decisions you can reuse

Practical AWS playbooks with request flows, security boundaries, failure modes, cost drivers, and production checklists.

01

Separate agent reasoning from side effects

Keep model orchestration separate from the Lambda functions that read data or change AWS resources.

Amazon Bedrock · AWS Lambda · IAM

02

Decouple consumers with event-driven fan-out

Publish domain events once, then let independent consumers process them at their own pace.

Amazon EventBridge · Amazon SQS · AWS Lambda

03

Put backpressure between producers and workers

Use a durable queue to absorb traffic spikes and let workers scale without overwhelming downstream systems.

Amazon SQS · AWS Lambda · CloudWatch

04

Keep the synchronous path intentionally small

Use a thin API layer for validation and authorization, then move longer work behind an asynchronous boundary.

Amazon API Gateway · AWS Lambda · DynamoDB

05

Keep analytical data open and queryable

Store analytical data in an open table format so multiple query engines can share it without repeated copies.

Amazon S3 · Apache Iceberg · Amazon Athena

06

Scale services around measurable demand

Run long-lived workloads behind a load balancer and scale tasks from demand and saturation signals.

Amazon ECS · AWS Fargate · Elastic Load Balancing

07

Cache public content at the edge

Serve immutable assets and cacheable responses close to readers while keeping dynamic work behind explicit origins.

Amazon CloudFront · Amazon S3 · AWS Lambda

08

Make trust boundaries explicit

Assign narrow identities to each workload and encrypt data with ownership and access paths documented.

IAM · AWS KMS · AWS Secrets Manager

09

Design observability around user impact

Connect service metrics, traces, and structured logs to a small set of workload-level objectives.

Amazon CloudWatch · AWS X-Ray · AWS CloudTrail

10

Measure unit cost before optimizing spend

Tie AWS charges to a workload outcome so teams can distinguish healthy growth from architectural waste.

AWS Cost Explorer · AWS Budgets · Cost Anomaly Detection

Total monthly cost

Usage based

CloudFront caches static assets and pages, Lambda runs only when requested, DynamoDB charges by usage, and SES charges by recipient. At personal-blog traffic this should stay near zero, though it is usage-based rather than guaranteed free. Keep AWS Budgets enabled.