# Start Here
Genotype is a programming language designed to help developers synchronize types between TypeScript, Rust, and Python (more languages coming soon).
## Learn the Genotype Language
To get familiar with the Genotype programming language, see [Quick Genotype Language Tour](language.md). It will lead you through all the language features, show you how to use them, and link to more detailed documentation.
To learn more about the specific Genotype targets, see:
- [TypeScript Overview](typescript.md)
- [Rust Overview](rust.md)
- [Python Overview](python.md)
## Quick Start
Follow the steps below to get started with Genotype or, alternatively, to play with Genotype without installing it, try [Genotype Playground](https://genotype-lang.org/playground).
### 1. Install the CLI
Install the Genotype CLI to get started:
**Linux/macOS**
```sh
**Windows**
```powershell
See [Genotype Installation](https://genotype-lang.org/docs/getting-started/installation/) for more options.
### 2. Bootstrap a New Project
Run `gt init` to bootstrap a new Genotype project. It will ask you a few questions and generate `genotype.toml` and source files for your project:
```sh
gt init
```
See [the CLI reference](cli.md) for more information about the Genotype CLI.
#### Manual Set Up
To set up a project manually, create `genotype.toml` in your project directory. This matches the configuration generated by `gt init` for a directory named `my-package`:
```toml
name = "my-package"
version = "0.1.0"
[ts]
enabled = true
[ts.manifest]
name = "my-package"
[py]
manager = "uv"
enabled = true
[py.manifest.project]
name = "my-package"
[rs]
enabled = true
[rs.manifest.package]
name = "my_package"
edition = "2024"
```
See [Configuration Reference](configuration.md) for more details.
### 3. Edit Type Files
Create a new file `.type` in the `src` directory and add your types, for example `src/user.type`:
```type
User: {
name: FullName,
email: string,
}
FullName: {
first: string,
last?: string,
}
```
See [the Quick Tour](language.md) for more information about the language.
### 4. Build
Run `gt build` to generate code for the targets configured in [`genotype.toml`](configuration.md):
```sh
gt build
```
The generated files go into the output directories selected during initialization. Run the command again after editing your types.
See [the CLI reference](cli.md#gt-build) for more build options.
## Working with AI Agents
Run `gt skill install` to install the Genotype agent skill. `gt init` also has the option to install the skill during project setup. See [Agent Skill](https://genotype-lang.org/docs/toolchain/skill/) for more info.
The documentation is also available as [llms.txt](https://genotype-lang.org/llms.txt), an index for AI tools, and [llms-full.txt](https://genotype-lang.org/llms-full.txt), the full documentation in a single text file. Give your agent these links when it needs documentation without browsing the website.