# Installation

Install the package and point TypeScript at the ElementsKit JSX runtime. No build-step config on the consumer side — everything runs through your existing bundler.

## Install

```sh
pnpm add elements-kit
```

```sh
npm install elements-kit
```

```sh
yarn add elements-kit
```

```sh
bun add elements-kit
```

```sh
deno add npm:elements-kit
```

```html
<script type="module">
  import { signal } from "https://esm.sh/elements-kit/signals";
</script>
```

## Configure JSX

Point TypeScript at the ElementsKit JSX runtime. Required if you write JSX; skip otherwise.

```json
{
  "compilerOptions": {
    "jsx": "react-jsx",
    "jsxImportSource": "elements-kit"
  }
}
```

Per-file pragma is also supported if you need JSX from a different source elsewhere in the project:

```tsx
/* @jsxImportSource elements-kit */
```

## Verify

A minimal script confirms the install works:

```ts
import { signal, effect } from "elements-kit/signals";

const count = signal(0);
effect(() => console.log("count:", count()));

count(1); // → count: 1
count(2); // → count: 2
```

## See also

* [Quick start](/getting-started/quick-start)
* [Philosophy](/getting-started/philosophy)
* [Signals](/signals)
