# Installation

It is recommended to use [AGS](https://aylur.github.io/ags/)
to scaffold and run projects in TypeScript.

It lets you

- generate TypeScript types using [ts-for-gir](https://github.com/gjsify/ts-for-gir)
- generate a tsconfig which is used by LSPs to provide intellisense
- bundle your TypeScript and JavaScript code using [esbuild](https://esbuild.github.io/)

:::details Trivia
AGS is the predecessor of Astal, which was written purely in TypeScript and so only supported
JavaScript/TypeScript. Now it serves as a scaffolding tool for Astal+TypeScript projects.
:::

## Setting up a project

🚧 Setting up a dev environment without AGS is not yet documented. 🚧
