Doing a big TypeScript migration in a short time frame is a recipe for disaster.
There are too many chances to make mistakes, especially when working towards a deadline.
You're faced with hundreds of decisions.
If you don't choose correctly, users will suffer.
Your team will suffer.
- How do you coordinate a large-scale migration across multiple repositories?
- How do you avoid merge conflicts and low type coverage during the migration?
- How do you make applications merge and deploy ready post-migration?
- How do you update other dependencies–Jest, ESlint, webpack, etc.–to play nicely with the TypeScript code?
These are all questions that you need to be able to answer.
But wouldn't it be great to have the confidence to migrate a legacy JavaScript application to TypeScript without breaking the internet?
The good news is that leading TypeScript migrations is an acquired skill that can be learned and practiced.
That's the goal of this module: to put you in the driver's seat and empower you to lead TypeScript migration efforts across your team.
The most important thing you need to realize is that this is a marathon, not a sprint. You can break it into chunks and work through errors one by one.
You can let TypeScript errors guide the migration, and learn as you go. 🤯
In this section, you will dive head-first into the TypeScript code by migrating dotpather, an open source project.
You will also learn how to:
- add TypeScript to the project
- incrementally fix TypeScript errors
- convert tests to TypeScript
- use types to get the power of TypeScript in JS files
- write unit tests with Jest and TypeScript
Migration efforts are a non-trivial undertaking, but you will feel empowered to lead those efforts in your team after going through this module.