Quick Blog Notes


Requirements

  • Write posts easily
  • Host interactive experiments
  • Fast loading (minimal JS)
  • Simple deployment

Framework Comparison

FrameworkReactGatsbyAstro
Setup complexitySimpleGraphQL requiredNew syntax
Blog featuresDIYPlugin ecosystemBuilt-in
Base bundle~150KB~50KB0KB
Interactive supportFullFullIslands

Key Observations

React: Over-engineering for static content. 150KB JavaScript for text display.

Gatsby: Heavy build times. GraphQL adds complexity for simple blogs.

Next.js: Feature-rich but opinionated. Complex deployment patterns.

Astro: Zero JS by default. Islands architecture enables selective interactivity.

Performance

Blog post (Astro): ~10KB
Blog post (React): ~160KB

Both support full React apps when needed via islands.

Architecture

/blog         → Static HTML, no JS
/experiments  → React islands
/projects     → Mixed approach

MDX enables React components only where they add value.

Notes

  • Blog posts are documents, not applications
  • Static content doesn’t need client-side frameworks
  • Islands architecture: HTML for content, React for interaction
  • Tool selection should match the primary use case