Migrating a Legacy JavaScript Codebase to TypeScript - JSJ 680

EPISODE · Jun 5, 2025 · 1H 25M

Migrating a Legacy JavaScript Codebase to TypeScript - JSJ 680

from JavaScript Jabber · host Charles M Wood

In this episode, Dan and I (Steve) dove deep into what turned out to be a surprisingly complex, yet incredibly insightful topic: gradually migrating a massive legacy JavaScript project over to TypeScript. We're talking about nearly 1,000 JS files, 70,000+ lines of code, and years of developer history—all transitioning carefully to a typed, modern future.Dan walked us through how he started by setting up the project for success before converting even one file—getting CI/CD ready, setting up tsconfig.json, sorting out test dependencies, dealing with mock leaks, and even grappling with quirks between VS Code and WebStorm debugging.We talked tools (like TS-ESLint, concurrently, and ts-node), why strict typing actually uncovered real bugs (and made the code better!), and why it’s crucial not to touch any .js files until your TypeScript setup is rock solid.Key Takeaways:Gradual migration is 100% possible—and often better—than ripping the bandaid off.TypeScript can and will catch bugs hiding in your JavaScript. Be prepared!Use VS Code extensions or TS-Node to support your devs’ tooling preferences.Don't underestimate the setup phase—it’s the foundation of long-term success.Start small: Dan's team converted just one file at first to test the whole pipeline.If you’re sitting on a legacy JS project and dreaming of TypeScript, this episode is your blueprint—and your warning sign.Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

NOW PLAYING

Migrating a Legacy JavaScript Codebase to TypeScript - JSJ 680

0:00 1:25:42

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

Over Engineered Chris Morrell A podcast where we explore unimportant programming questions (mostly PHP/Laravel/JavaScript) in extreme detail. BAT Community Podcast BAT Community & Brave Basic Attention Token (BAT) is a revolutionary digital advertising and rewards platform from the inventor of JavaScript and co-founder of Mozilla and Firefox that rewards users in Ethereum-based BAT tokens. Brave is a fast, BAT-powered privacy browser that blocks all 3rd-party ads and trackers by default. Learn more about BAT, Brave and tech with this podcast! JS Party: JavaScript, CSS, Web Development Changelog Media Your weekly celebration of JavaScript and the web. Current panelists: Jerod Santo, Kevin Ball (KBall), Nick Nisi, Chris Hiller, Amal Hussein & Amy Dutton.Past panelists: Suz Hinton, Feross Aboukhadijeh, Amelia Wattenberger, Divya Sasidharan, Alex Sexton, Rachel White, Emma Bostian, Ali Spittel, Mikeal Rogers & Jessica Sachs.We talk about the web platform (Chrome, Safari, Edge, Firefox, Brave, etc), front-end frameworks (ReactJS, SolidJS, Svelte, VueJS, AngularJS, etc), JavaScript and TypeScript runtimes (Node, Deno, Bun), web animation, SVG, TailwindCSS, robotics, IoT, and much more. If JavaScript and/or the web touch your life, this show’s for you.Some people search for JSParty and can't find the show, so now the string JSParty is in our description too. CodeWinds - Leading edge web developer news and training | javascript / React.js / Node.js / HTML5 / web development - Jeff Barczewski Jeff Barczewski The CodeWinds podcast is designed to help you keep up with the latest web developer news and techniques.Learn about the new developments in javascript, React.js, Node.js, HTML5 and other exciting web developer and mobile technologies.Listen to interviews and reviews of the latest and most promising new libraries, modules, and tools. Learn what the professional developers use to build their web and mobile web applications. Using the latest techniques and best practices you can continue to sharpen your skills.Each week Jeff Barczewski, a seasoned web developer and trainer will share his latest insights and will interview leaders in the web and mobile development community.Become your best, follow CodeWinds.
URL copied to clipboard!