AI Summary
5 min readWes Bos describes migrating his decade-old course platform—a monolith with 60-70 Express.js routes, Pug templates, admin areas, auth, stats, and marketing sites—from Express and Pug to Hono (a web-standards-based router) and TSX/JSX. Using AI tools like LLMs, he lowered the barriers to this update, emphasizing preparation, planning, and testing over one-shot rewrites.
Choosing a Lateral Migration Path
The key to success starts with tech decisions that maintain feature parity without introducing new paradigms. Wes selected Hono because its API mirrors Express closely while leveraging modern web standards like Fetch API, web streams, async local storage, and FormData—avoiding outdated Connect middleware patterns. He avoided full shifts to frameworks like SvelteKit or T3 Stack, noting such "big bang" changes with added features rarely ship due to overwhelming complexity.
Continue reading the full summary in the app — free to try.
Read Full Summary →Free • No credit card required
What you'll learn
- 1 (00:00) **Migrating Legacy Code from Express to Hono with AI**
- 2 (05:12) **Tech Choices and Lateral Migration Strategy**
- 3 (08:45) **Establishing Patterns for AI Success**
- 4 (12:06) **Detailed Planning and Testing Checklist**
- 5 (14:31) **Executing the Migration and Verification**
- 6 (16:58) **Post-Migration Benefits and Future Plans**
- 7 (19:34) **Broader Applications and Best Practices**
+ Full timestamped outline available in the app
Show Notes
Wes and Scott talk about migrating large codebases with AI — how to plan framework and language moves, establish patterns, handle templating changes, test thoroughly, safely deploy, and more.
Show Notes
- 00:00 Welcome to Syntax!
- 01:46 Why migrate to a new language or framework?
- 05:09 How to approach a large code migration
- 08:47 Establishing patterns before using AI
- 10:35 Moving from pug to JSX
- 12:06 Building a detailed migration plan
- 15:18 Testing every part of the application
- 15:51 Brought to you by Sentry.io
- 16:58 Deploying and catching issues with Sentry
- 19:12 Converting express requests to web standard requests
- 19:34 Other codebases that could benefit from AI migrations
- 21:36 Sick Picks + Shameless Plugs
Sick Picks
- Scott: WisprFlow
- Wes: displayplacer
Shameless Plugs
Hit us up on Socials!
Syntax: X Instagram Tiktok LinkedIn Threads
Wes: X Instagram Tiktok LinkedIn Threads
Scott: X Instagram More from this podcast