# Installation

Let's install Dedot to your project and start connecting to blockchain networks

### Install `dedot` package

Dedot provides an umbrella package named `dedot`, it's the only package you need to install to access to most of the primitives & APIs when you're working with Dedot.

{% tabs %}
{% tab title="npm" %}

```sh
npm i dedot
```

{% endtab %}

{% tab title="yarn" %}

```sh
yarn add dedot
```

{% endtab %}

{% tab title="pnpm" %}

```sh
pnpm add dedot
```

{% endtab %}
{% endtabs %}

### Enable auto-completion/IntelliSense

Each Substrate-based blockchain has their own set of Data Types & APIs to interact with, so being aware of those Types & APIs when working with a blockchain will greatly improve the overall development experience. Dedot exposes TypeScript's Types & APIs for each individual Substrate-based blockchain via [`ChainApi`](https://github.com/dedotdev/chaintypes/blob/main/packages/chaintypes/src/index.ts) interfaces, we recommend using TypeScript for your project to have the best experience.

Types & APIs for each known Substrate-based blockchains are defined in package [`@dedot/chaintypes`](https://github.com/dedotdev/chaintypes)

{% tabs %}
{% tab title="npm" %}

```sh
npm i -D @dedot/chaintypes
```

{% endtab %}

{% tab title="yarn" %}

```sh
yarn add -D @dedot/chaintypes
```

{% endtab %}

{% tab title="pnpm" %}

```sh
pnpm add -D @dedot/chaintypes
```

{% endtab %}
{% endtabs %}

Make sure to install `@dedot/chaintypes` as a `dev dependency`.

### Next

After setting up your project & installing all the necessary packages, let's start connecting to a blockchain network and have some fun!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dedot.dev/getting-started/installation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
