Site Stats
Large language models make it cheap to build software fitted exactly to the job at hand. Widely used frameworks are great, but when you don't need all their features, dropping down to something simpler is now easy. So in 2026, I migrated the site off Next.js onto Astro. It's still completely static with no server side rendering, nothing computed per request, but also now no unnecessary middleware. This also makes everything quite small: every page's code comes in under 60 kB, and the fully static pages (no JS in many cases!) weigh only a kilobyte or two. The numbers below are regenerated on every build.
Whole site: 1.01 MB gzipped (1.24 MB raw) across 31 files.
By file type
| Type | Gzipped | Raw |
|---|---|---|
| HTML | 69.2 KB | 168.6 KB |
| JavaScript | 50.5 KB | 163.1 KB |
| Images | 915.1 KB | 939.9 KB |
| Total | 1.01 MB | 1.24 MB |
CSS is inlined into the HTML (no separate stylesheet requests): 1.2 KB gzipped, already counted within HTML above.
By page
| Route | Gzipped | Raw |
|---|---|---|
| /posts | 58.1 KB | 135.9 KB |
| /sports | 49.9 KB | 163.8 KB |
| / | 48.3 KB | 147.6 KB |
| /stats | 2.2 KB | 7.3 KB |
| /saved-on-hosting | 1.2 KB | 2.9 KB |
Each page counts only the HTML and JavaScript it actually loads, so
fully static pages stay tiny; the pages with interactive islands
(/, /sports) also pull a shared ~44 kB
React bundle. Images aren't included here; they're in the site total
above. /posts rolls up all blog posts.