1 2# TypeScript 3 4[](https://github.com/microsoft/TypeScript/actions?query=workflow%3ACI) 5[](https://dev.azure.com/typescript/TypeScript/_build?definitionId=7) 6[](https://www.npmjs.com/package/typescript) 7[](https://www.npmjs.com/package/typescript) 8 9[TypeScript](https://www.typescriptlang.org/) is a language for application-scale JavaScript. TypeScript adds optional types to JavaScript that support tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript. Try it out at the [playground](https://www.typescriptlang.org/play/), and stay up to date via [our blog](https://blogs.msdn.microsoft.com/typescript) and [Twitter account](https://twitter.com/typescript). 10 11Find others who are using TypeScript at [our community page](https://www.typescriptlang.org/community/). 12 13## Installing 14 15For the latest stable version: 16 17```bash 18npm install -g typescript 19``` 20 21For our nightly builds: 22 23```bash 24npm install -g typescript@next 25``` 26 27## Contribute 28 29There are many ways to [contribute](https://github.com/microsoft/TypeScript/blob/main/CONTRIBUTING.md) to TypeScript. 30* [Submit bugs](https://github.com/microsoft/TypeScript/issues) and help us verify fixes as they are checked in. 31* Review the [source code changes](https://github.com/microsoft/TypeScript/pulls). 32* Engage with other TypeScript users and developers on [StackOverflow](https://stackoverflow.com/questions/tagged/typescript). 33* Help each other in the [TypeScript Community Discord](https://discord.gg/typescript). 34* Join the [#typescript](https://twitter.com/search?q=%23TypeScript) discussion on Twitter. 35* [Contribute bug fixes](https://github.com/microsoft/TypeScript/blob/main/CONTRIBUTING.md). 36* Read the archived language specification ([docx](https://github.com/microsoft/TypeScript/blob/main/doc/TypeScript%20Language%20Specification%20-%20ARCHIVED.docx?raw=true), 37 [pdf](https://github.com/microsoft/TypeScript/blob/main/doc/TypeScript%20Language%20Specification%20-%20ARCHIVED.pdf?raw=true), [md](https://github.com/microsoft/TypeScript/blob/main/doc/spec-ARCHIVED.md)). 38 39This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see 40the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) 41with any additional questions or comments. 42 43## Documentation 44 45* [TypeScript in 5 minutes](https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html) 46* [Programming handbook](https://www.typescriptlang.org/docs/handbook/intro.html) 47* [Homepage](https://www.typescriptlang.org/) 48 49## Roadmap 50 51For details on our planned features and future direction please refer to our [roadmap](https://github.com/microsoft/TypeScript/wiki/Roadmap). 52 53## Changes 54 55We made the following code modifications to support the ETS development paradigm. 56 57### October 2021 58 59* [x] Support custom component `struct` syntax, and add `StructDeclaration` and `EtsComponentExpression` node type. 60 61### November 2021 62 63* [x] Support `gotoDefinition` for custom component name and arguments. 64* [x] Support completion of lifecycle for `StructDeclaration` type. 65* [x] Support `@Builder` decorator for function and method. 66 67### January 2022 68 69* [x] Optimize eTS language support. 70* [x] Support `@BuilderParam` decorator and custom container lambda syntax. 71* [x] Add jsDoc and displayParts info in `getCompletionAtPosition` interface. 72* [x] Support eTS language ScriptKind and Extension. 73* [x] Add `PropertyAccessExpressionConditionCheck` for eTS. 74 75### February 2022 76 77* [x] Support `@Styles` decorator and related syntax. 78* [x] Add check for `struct` name contain reserved tag name. 79* [x] Support `stateStyles` property. 80* [x] Performance optimization for eTS completion. 81* [x] Support `@Extend` and `@Styles` decorators for function.