Moving the site to Astro
The work: 9 September 2026 · Written 1 November 2026 · Entry 9 of 17
The first versions of the site were one big React application: the browser downloaded the code, ran it, and only then showed a page. On 9 September 2026 the project added a proof of concept for Astro, a framework that builds every page as plain HTML at build time and adds JavaScript only to the parts that need it.
Why change the framework
A search engine, a visitor on a slow connection and an assistive tool all do better with a page that is already HTML when it arrives. The typing games need JavaScript, but a guide, an About page or a leaderboard heading does not.
With Astro, each page is built ahead of time. The interactive parts, such as the typing box or a game, are small islands that load their code when they are needed. The rest of the page is just text.
A static site, deployed on Cloudflare
The build produces a folder of files with no server code. The site is served by Cloudflare. A change that is pushed to a staging branch builds a preview version that can be tested before the real site changes.
What it changed for the player
- The first screen appears sooner, because the browser does not wait for a large application.
- Every page has its own address and its own title and description for search results.
- Pages in other languages are separate pages, not a switch inside the application.
Games stay small islands
A game page loads the code of its game only on that page. The code for online play is fetched only when a game goes online, and the code for the on-screen keyboard only on a touch screen. A visitor who reads a guide does not pay for any of it.