Linkudo
Technical architect and sole developer, rebuilding a classic Flash word association game as a modern, mobile‑first web application for contemporary browsers and devices.

In Detail
Bringing Linkudo back to the web was not a conventional website redevelopment or straightforward rewrite. The original Flash‑based game belonged to an earlier generation of web technology and could no longer simply be brought back online, with the original codebase no longer feasible to build upon. The new version therefore required a ground‑up technical implementation capable of preserving the character of Tony's game whilst adapting it to contemporary browsers, mobile devices, and expectations around web performance and usability.
The concept and gameplay remained Tony's; my responsibility was to determine how these could be translated into a maintainable modern web application and then deliver that technical solution.
This created two distinct technical challenges:
Rebuilding the game system:
creating the application architecture and supporting tooling required to operate Linkudo as a contemporary daily web game.Delivering the player experience:
developing a fast, responsive, themable Next.js and React front end that let players solve puzzles, track performance, persist preferences, and share results.
Game Configuration Generation
Each day, Linkudo presents players with a new challenge. I developed a Python‑based generation process to prepare these daily game configurations in advance, performing the computationally intensive work outside of the live application rather than generating challenges in response to player requests.
Precomputing the configurations allowed future games to be prepared ahead of time and kept the more complex processing out of the player‑facing application. The live game could therefore retrieve a prepared configuration when required, keeping the gameplay experience fast and responsive.
Delivering the Game Experience
The player‑facing application was built with Next.js, React, TypeScript, and SCSS, supported by a wider back‑end architecture using Node.js, Supabase/PostgreSQL, and Redis. Together, these provided the foundations for a fast, responsive game experience whilst supporting player state, preferences, results, and the wider functionality around each daily game.
Working from the client's visual designs, I developed a reusable component system around the core word‑linking experience, adapting the game for modern browsers, touchscreens, and different viewport sizes. The interface was deliberately kept simple and responsive, allowing the gameplay itself to remain the focus.
Customisable Player Preferences
Linkudo supports five selectable themes, allowing players to personalise the game without changing its underlying mechanics. I implemented the theming and preference system so that player choices persist between visits, with theme usage also tracked to understand which options proved most popular with players.





Automated Social Share Image Generation
When a player completes a game, Linkudo can create a branded social share image reflecting that day's challenge, the player's result, and their selected theme. Supporting every possible combination and permutation manually would have created a repetitive production task, so I built a standalone Node.js service to automate the process.
Using React and Puppeteer, the service generates the required image variants from reusable components, keeping them visually consistent with the game itself and ready for use when players share their results.

From Beta to Launch
The rebuilt Linkudo progressed through private beta before launching publicly in 2025. More than 2,000 games were played on the first day of beta, providing an immediate real‑world test of the application and supporting architecture, with initial player feedback strongly positive.
The launch brought Tony's original game back to the web after an absence of almost two decades, but for a very different generation of casual game players. Where the original had been created in the Flash era and designed to be played on desktop computers, the new Linkudo was built around responsive, touch‑based interaction and the expectation that many players would play on their phones.
Whilst the concept remained the same, the technology and experience around it had been rebuilt for a fundamentally different web.
- "
John Kavanagh is a passionate and highly skilled developer with a wonderful ability to calmly concede downward business pressures whilst pragmatically delivering the project at hand.
John is never fazed by project management/requirement issues as are common in these environments, instead, he always finds a way to deliver value to both the end consumer and the business. It's not always easy to remain level‑headed and calm on high‑pressure projects but John's good nature and professionalism invariably remain infallible. It's an absolute pleasure working with him."
- "
John Kavanagh was undoubtedly the best UI developer on the programme (often carrying the burden of his team) and played a crucial role in rebuilding the look and feel of the bank's global online platforms. John was always articulate, willing to speak his mind, helpful and always did an amazing job ‑ he clearly takes immense pride in his work (and rightly so!). His attention to detail and perfectionist attitude helped produce a product that we could be proud of, despite the extremely difficult environment we had to work in.
John would suit any senior or lead UI developer roles and I would have no hesitation in recommending him."
- "
It's been a pleasure to work with John Kavanagh in the web team at Nando’s. He's a top professional who has prided himself in bringing my designs to life with a high standard since day one. He has a great eye for detail with a clear understanding of user‑centric thinking and is always willing to give great suggestions from a technical standpoint.
I have also really appreciated his positive energy which gives a great lift to the team at every stand up. Any team would be lucky to work with him, as I have experienced myself!"
- "
I initially worked with John Kavanagh at Style.com where we built an e‑commerce site for Condé Nast. We built numerous versions of the site for prototypal purposes and finally went live with a version that contained the majority of work from John and his team. Always punctual, proactive and willing, he's definitely one to have in any development team. Since then we went on to work together again at HSBC where we built a number of key React components. He's a great team player who takes a lot of pride in his work, I'd highly recommend him."
- "
John Kavanagh is one of the best front‑end developers I've had the pleasure of working with. Incredibly knowledgeable, great attention to detail – he understands design and why it's important to get it right, and he's also very experienced coding for accessibility. Always professional but with a great sense of fun, John would be an asset to any team and project."
