Skip to content

Commit 24f0803

Browse files
Add more details to the TypeScript docs (#1346)
1 parent 9db43a0 commit 24f0803

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

packages/lit-dev-content/site/docs/v3/tools/development.md

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,12 +202,23 @@ For full installation and usage instructions, see the [Web Dev Server documentat
202202

203203
## TypeScript { #typescript }
204204

205-
TypeScript extends the Javascript language by adding support for types. Types are useful for catching errors early and making code more readable and understandable.
205+
Lit support developing components in TypeScript, including full type declarations for the Lit APIs, standard and experimental decorators, and community tools for template type-checking and linting.
206+
207+
Because Lit is just a library, and doesn't require a compiler or use non-standard langauge syntax, there are no specific TypeScript tools that are required. Lit works with the official TypeScript compiler, `tsc`, with TypeScript wrappers such as those for Rollup, Vite, or Webpack, and alternate compilers like `esbuild`.
208+
209+
The main requirements of a TypeScript project are:
210+
- Enabling a modern JavaScript language level, like with the `"ES2021"` [lib](https://www.typescriptlang.org/tsconfig/#lib).
211+
- Enabling the DOM types with the `"DOM"` [lib](https://www.typescriptlang.org/tsconfig/#lib).
212+
- Optionally [enabling experimental decorators](https://www.typescriptlang.org/tsconfig/#experimentalDecorators) and [disabling "define" semantics for class fields](https://www.typescriptlang.org/tsconfig/#useDefineForClassFields), if you choose to use TypeScript's experimental decorators.
213+
214+
These options are generally set in your project's tsconfig.
215+
216+
### Installation
206217

207218
To install TypeScript in your project:
208219

209220
```bash
210-
npm install typescript --save-dev
221+
npm i -D typescript
211222
```
212223

213224
To build the code:
@@ -218,6 +229,10 @@ npx tsc --watch
218229

219230
For full installation and usage instructions, see the [TypeScript site](https://www.typescriptlang.org/). To get started, the sections on [installing TypeScript](https://www.typescriptlang.org/docs/handbook/typescript-tooling-in-5-minutes.html) and [using its features](https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html) are particularly helpful.
220231

232+
### Decorators
233+
234+
TypeScript supports two versions of decorators: experimental and standard. See our [Decorators](/docs/v3/components/decorators/#decorators-typescript) documentation for more information.
235+
221236
## JavaScript and TypeScript linting { #linting }
222237

223238
Linting can help catch errors in your code. We recommend using [ESLint](https://eslint.org) for linting Lit code.

0 commit comments

Comments
 (0)