Microsoft today launched TypeScript 2.0, adding new features, aligning further with ECMAScript‘s evolution, and widening support for JavaScript libraries. You can download TypeScript 2.0 now for Visual Studio 2015 (Update 3 required), for Visual Studio Code, grab it with NuGet, or install it with npm (npm install -g typescript@2.0). Visual Studio 15 Preview users will get TypeScript 2.0 in the next Preview release.

Microsoft first unveiled TypeScript, an open source programming language developed and maintained by the company, in October 2012. TypeScript is a strict superset of JavaScript and can be used to develop JavaScript applications for client-side or server-side execution. Think of it as developing with JavaScript plus static types.

TypeScript saw 275,000 npm downloads in August 2015, a number that jumped to over 2 million in August 2016. DefinitelyTyped, a small repository of declaration files, now contains over 2,000 libraries that have been written by hand by over 2,500 individual contributors.

typescript_september_2016

As for version 2.0, there are a slew of new features added on top of the 1.8 release. Among the highlights are null- and undefined-aware types, control flow based type analysis, tagged union types, the never type, read-only properties and index signatures, this types for functions, and glob support in tsconfig. For a full rundown, check out What’s new in TypeScript.

Microsoft’s pitch for TypeScript is bolder than ever:

TypeScript is JavaScript that scales. Starting from the same syntax and semantics that millions of JavaScript developers know today, TypeScript allows developers to use existing JavaScript code, incorporate popular JavaScript libraries, and call TypeScript code from JavaScript. TypeScript’s optional static types enable JavaScript developers to use highly-productive development tools and practices like static checking and code refactoring when developing JavaScript applications.

The company’s plan for the language is simple: Continue working with partners and the community to evolve the language’s type system so that developers can further express JavaScript in a statically typed fashion. The other priority is enhancing the TypeScript language service and set of tooling features so that developer tools “become smarter and further boost developer productivity.”

Get more stories like this on TwitterFacebook