TypeScript
The official blog of the TypeScript team.
Latest posts

Announcing TypeScript 5.9

Today we are excited to announce the release of TypeScript 5.9!If you're not familiar with TypeScript, it's a language that builds on JavaScript by adding syntax for types.With types, TypeScript makes it possible to check your code to avoid bugs ahead of time.The TypeScript type-checker does all this, and is also the foundation of great tooling in your editor and elsewhere, making coding even easier.If you've written JavaScript in editors like Visual Studio and VS Code, TypeScript even powers features you might already be using like completions, go-to-definition, and more.You can learn more about Type...

Announcing TypeScript 5.9 RC

Today we are excited to announce the Release Candidate (RC) of TypeScript 5.9!To get started using the Release Candidate, you can get it through npm with the following command:Let's take a look at what's new in TypeScript 5.9! What's New Since the Beta?A few reported fixes have been made since the 5.9 beta, including the restoration of to the DOM library.Additionally, we have added a section about Notable Behavioral Changes.Minimal and Updated For a while, the TypeScript compiler has supported an flag that can create a within the current directory.In the l...

Announcing TypeScript 5.9 Beta

Today we are excited to announce the availability of TypeScript 5.9 Beta.To get started using the beta, you can get it through npm with the following command:Let's take a look at what's new in TypeScript 5.9! Minimal and Updated For a while, the TypeScript compiler has supported an flag that can create a within the current directory.In the last few years, running created a very "full" , filled with commented-out settings and their descriptions.We designed this with the intent of making options discoverable and easy to toggle.However, given external feedback (a...

Announcing TypeScript Native Previews

This past March we unveiled our efforts to port the TypeScript compiler and toolset to native code.This port has achieved a 10x speed-up on most projects - not just by using a natively-compiled language (Go), but also through using shared memory parallelism and concurrency where we can benefit.Since then, we have made several strides towards running on large complex real-world projects.Today, we are excited to announce broad availability of TypeScript Native Previews.As of today, you will be able to use npm to get a preview of the native TypeScript compiler.Additionally, you'll be able to use a previe...
A 10x Faster TypeScript

Today I'm excited to announce the next steps we're taking to radically improve TypeScript performance.The core value proposition of TypeScript is an excellent developer experience.As your codebase grows, so does the value of TypeScript itself, but in many cases TypeScript has not been able to scale up to the very largest codebases.Developers working in large projects can experience long load and check times, and have to choose between reasonable editor startup time or getting a complete view of their source code.We know developers love when they can rename variables with confidence, find all referen...

Announcing TypeScript 5.8

Today we're excited to announce the release of TypeScript 5.8!If you're not familiar with TypeScript, it's a language that builds on top of JavaScript by adding syntax for types.Writing types in our code allows us to explain intent and have other tools check our code to catch mistakes like typos, issues with and , and more.Types also power TypeScript's editor tooling like the auto-completion, code navigation, and refactorings that you might see in editors like Visual Studio and VS Code.In fact, TypeScript and its ecosystem powers the JavaScript experience in both of those editors as well!To get sta...

Announcing TypeScript 5.8 RC

Today we are excited to announce the Release Candidate (RC) of TypeScript 5.8!To get started using the Release Candidate, you can get it through npm with the following command:Let's take a look at what's new in TypeScript 5.8!What's New Since the Beta?Since our beta release, we have had to pull back some work on how functions with conditional return types are checked.Based on some of the limitations and changes we wanted to make, we decided to iterate on the feature with the goal of shipping it in TypeScript 5.9.However, as part of this work, we added more granular checks for branches within return ...

Announcing TypeScript 5.8 Beta

Today we are excited to announce the availability of TypeScript 5.8 Beta.To get started using the beta, you can get it through npm with the following command:Let's take a look at what's new in TypeScript 5.8!Checked Returns for Conditional and Indexed Access TypesConsider an API that presents a set of options to a user:The intent with is that it shows a UI element that can allow selecting either a single option or multiple options.When it does this is determined by the parameter.When is , the return type of should be , and when it is , the return type should be .The problem is that the typ...

Announcing TypeScript 5.7

Today we excited to announce the availability of TypeScript 5.7!If you're not familiar with TypeScript, it's a language that builds on JavaScript by adding syntax for type declarations and annotations. This syntax can be used by the TypeScript compiler to type-check our code, and it can also be erased to emit clean, idiomatic JavaScript code. Type-checking is helpful because it can catch bugs in our code ahead of time, but adding types to our code also makes it more readable and allows tools like code editors to give us powerful features like auto-completion, refactorings, find-all-references, and more. TypeScr...
Popular topics

- August 2025
- July 2025
- May 2025
- March 2025
- February 2025
- January 2025
- November 2024
- October 2024
- September 2024
- August 2024
- July 2024
- June 2024
- April 2024
- March 2024
- February 2024
- January 2024
- November 2023
- October 2023
- August 2023
- June 2023
- May 2023
- April 2023
- March 2023
- January 2023
- November 2022
- October 2022
- September 2022
- August 2022
- June 2022
- May 2022
- April 2022
- March 2022
- February 2022
- January 2022
- November 2021
- October 2021
- August 2021
- July 2021
- May 2021
- April 2021
- March 2021
- February 2021
- January 2021
- November 2020
- September 2020
- August 2020
- June 2020
- May 2020
- April 2020
- March 2020
- February 2020
- January 2020
- November 2019
- October 2019
- August 2019
- July 2019
- June 2019
- May 2019
- March 2019
- January 2019
- December 2018
- November 2018
- October 2018
- August 2018
- July 2018
- May 2018
- March 2018
- January 2018
- October 2017
- August 2017
- June 2017
- May 2017
- April 2017
- March 2017
- February 2017
- December 2016
- November 2016
- September 2016
- August 2016
- July 2016
- June 2016
- May 2016
- March 2016
- February 2016
- January 2016
- November 2015
- September 2015
- July 2015
- June 2015
- April 2015
- March 2015
- February 2015
- January 2015
- November 2014
- October 2014
- July 2014
- May 2014
- April 2014
- February 2014
- December 2013
- October 2013
- September 2013
- August 2013
- June 2013
- April 2013
- March 2013
- February 2013
- January 2013
- December 2012
- November 2012