I recently launched GPA Vault — a free tool site for US college students with 15 calculators and 16 blog guides covering GPA, student loans, and college costs. No framework, no backend, no database. Just static HTML files hosted on GitHub Pages.

Here's what the build taught me.

Why pure HTML?

The target audience is students searching Google for specific calculators. Page speed matters for SEO, and nothing beats a static HTML file served from a CDN. No hydration, no JS bundle, no render-blocking. Every tool loads in under a second.

The trade-off: no shared state, no components in the traditional sense. Header and footer are injected via a small JS partial system I wrote — components.js fetches the HTML partials and injects them into placeholder divs on load.