Quick Blog Notes
Requirements
- Write posts easily
- Host interactive experiments
- Fast loading (minimal JS)
- Simple deployment
Framework Comparison
| Framework | React | Gatsby | Astro |
|---|---|---|---|
| Setup complexity | Simple | GraphQL required | New syntax |
| Blog features | DIY | Plugin ecosystem | Built-in |
| Base bundle | ~150KB | ~50KB | 0KB |
| Interactive support | Full | Full | Islands |
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