> ## Documentation Index
> Fetch the complete documentation index at: https://kweri.uchenna.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Install kweri and configure your project.

## Package manager

<CodeGroup>
  ```bash npm theme={null}
  npm install kweri
  ```

  ```bash yarn theme={null}
  yarn add kweri
  ```

  ```bash pnpm theme={null}
  pnpm add kweri
  ```

  ```bash bun theme={null}
  bun add kweri
  ```
</CodeGroup>

## Requirements

| Requirement | Version                                           |
| ----------- | ------------------------------------------------- |
| TypeScript  | `^5.0`                                            |
| Node.js     | `>=18` (for `crypto.subtle` in query key hashing) |
| TypeBox     | bundled — `@sinclair/typebox ^0.34`               |

Kweri ships TypeBox as a dependency and re-exports `Type` and `Static` from its main entry point, so you don't need to install TypeBox separately.

## Package exports

```json theme={null}
{
  ".": "dist/index.js"  // main entry — Kweri class, adapters, utilities
}
```

Generated OpenAPI clients are written into **your** source tree (default
`src/api/kweri/client.ts`) and imported from there — not from the `kweri`
package. See the [kweri-gen CLI reference](/cli/kweri-gen).

## TypeScript configuration

Kweri is written in TypeScript and ships with declarations. No additional `@types` packages are needed.

Make sure your `tsconfig.json` has `"moduleResolution": "bundler"` or `"node16"` / `"nodenext"` to resolve the package exports correctly:

```json tsconfig.json theme={null}
{
  "compilerOptions": {
    "moduleResolution": "bundler",
    "strict": true
  }
}
```

## CLI (optional)

The `kweri-gen` CLI is included in the package and available as a local binary:

```bash theme={null}
# Run directly via npx
npx kweri-gen https://api.example.com/openapi.json --out src/api/kweri

# Or add a script to package.json
{
  "scripts": {
    "gen": "kweri-gen https://api.example.com/openapi.json --out src/api/kweri"
  }
}
```

See the [kweri-gen CLI reference](/cli/kweri-gen) for full options.
