A Performance Experiment

This page loaded in one TCP packet.

Everything you see — layout, animations, responsive design — fits in 14,600 bytes. One initial congestion window. Zero round trips.

14,600 bytes. No second chances.

The first thing a server sends is limited by TCP's initial congestion window — 10 segments of 1,460 bytes.

Most websites blast megabytes across dozens of round trips. This page proves a single TCP window can deliver a complete, polished experience.

No frameworks. No fonts. No images. Just HTML, CSS, and a few lines of vanilla JS — built with Bun and minified into a single file.

14,107
Bytes
0
Round Trips
1
File

Where every byte goes

A live breakdown of this page's weight.

CSS7.8 KB
HTML5.7 KB
JavaScript674 B

Techniques

What makes it possible.

Zero Dependencies

System font stack, CSS custom properties, vanilla JS. No framework, no library, no polyfill.

System FontsCSS VariablesVanilla JS
🔧

Single-File Build

Bun bundles HTML, CSS, and JS into one file. Inlined and minified. No external requests.

BunInline CSSMinification
🎯

Surgical CSS

Every declaration earns its bytes. Scroll reveals via IntersectionObserver, not a library.

IntersectionObserverCSS Transitions
No custom fonts. No images. No framework. No analytics. No cookie banner. Turns out most of the web's weight is things users never asked for.
This page — weighing 14,107 bytes

See for yourself

View source, fork it, beat it.

Open DevTools, check the Network tab. One request, one response, everything you see.

View on GitHub