TypeLemon dev log: how the site was built
Written 1 November 2026 from the project history
This is the story of how TypeLemon was built, told one milestone at a time. Each entry is about a real piece of work. It shows the day the work was done, taken from the project's history. The entries were written on 1 November 2026, after the work, and they are listed here in the order the work happened.
The log is for people who are curious how a typing site works, and for other developers who build games for the browser. If you only want to practise typing, the typing guides are a better place to start.
Entries, oldest first
March 2026
- Day one: a typing race for up to four players22 March 2026The first commit: a typing race for up to four players per room.
- Sign-in, scores and the first leaderboard24 March 2026Firebase sign-in on 23 March, the leaderboard on 24 March, its own page the next day.
- A keyboard on the screen: typing on a phone27 March 2026The phone keyboard that covers nothing: the first version, 27 March.
April 2026
- Playing live: WebRTC and WebSocket together1 April 2026A hybrid of direct player-to-player links and a server connection.
- Zombie Shooter: words are the bullets11 April 2026The first game beyond the race: type the word on each zombie.
May 2026
- Getting ready to be found15 May 2026Analytics and the small files search engines and ad services read.
- Rollback and replays for online play24 May 2026Prediction and rollback for online play, and replays that reproduce a run exactly.
June 2026
- A peer mesh and host handover29 June 2026A room keeps going when its host leaves: the host is elected again.
September 2026
- Moving the site to Astro9 September 2026Static pages, small islands of interactivity and a faster first screen.
October 2026
- Five languages and search-friendly pages2 October 2026Translated pages with their own addresses, hreflang links and a sitemap.
- Slime Stampede: a runner powered by typing4 October 2026A runner where every correct letter is a step and every typo a stumble.
- One platform for many games: rooms and watchers8 October 2026One set of rules for rooms, watchers and late joiners that every game can use.
- Computer players so nobody plays an empty game19 October 2026Companions that type inside the game, owned by a human player.
- How the typing report works20 October 2026How the My progress page gets its numbers, and where they are kept.
- The split keyboard for landscape25 October 2026Two keyboard halves beside the game when the phone is on its side.
- A command that audits our own SEO31 October 2026A command that lists what is missing on any page, and what it found.
November 2026
- A plain FAQ and the right words1 November 2026Questions anyone can understand, and a table of the right word for each language.