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

# Modules

To keep a small footprint in your application, the Trust Stack SDK is split into modules. Each module is a separate package and can be imported individually.

This means you can install only what is important to your application.

<Tabs>
  <Tab title="Canvas">
    ```bash theme={null}
    npm install @truststack/canvas
    # or 
    yarn add @truststack/canvas
    # or 
    pnpm add @truststack/canvas
    ```
  </Tab>

  <Tab title="Admin">
    ```bash theme={null}
    npm install @truststack/admin
    # or 
    yarn add @truststack/admin
    # or 
    pnpm add @truststack/admin
    ```
  </Tab>

  <Tab title="Hermes">
    ```bash theme={null}
    npm install @truststack/hermes
    # or 
    yarn add @truststack/hermes
    # or 
    pnpm add @truststack/hermes
    ```
  </Tab>

  <Tab title="DID">
    ```bash theme={null}
    npm install @truststack/did
    # or 
    yarn add @truststack/did    
    # or 
    pnpm add @truststack/did
    ```
  </Tab>
</Tabs>

# Configuration

If you call `configure` on any module, it will set those attributes **for all modules**.

```typescript theme={null}
import { AdminClient } from '@truststack/admin';

AdminClient.configure({ accessKey: 'my-access-key' });

...

import { CanvasClient } from '@truststack/canvas';

// This will use the access key set above
const client = new CanvasClient();
client.createCanvasTemplate({ ... });
```
