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

# Database Adapters

> Persistence and session storage

# Database Adapters

Database adapters provide persistence for conversations, sessions, and agent state.

## Available Adapters

| Adapter                  | Description                     |
| ------------------------ | ------------------------------- |
| `SQLiteAdapter`          | SQLite database                 |
| `UpstashRedisAdapter`    | Upstash Redis                   |
| `MemoryRedisAdapter`     | In-memory Redis-compatible      |
| `NeonPostgresAdapter`    | Neon PostgreSQL                 |
| `MemoryPostgresAdapter`  | In-memory PostgreSQL-compatible |
| `PostgresSessionStorage` | PostgreSQL session storage      |

## SQLite

```typescript theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
import { createSQLiteAdapter } from 'praisonai';

const db = createSQLiteAdapter({
  filename: './data.db'
});

await db.saveMessage({ role: 'user', content: 'Hello' });
const messages = await db.getMessages();
```

## Redis (Upstash)

```typescript theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
import { createUpstashRedis } from 'praisonai';

const redis = createUpstashRedis({
  url: process.env.UPSTASH_REDIS_URL,
  token: process.env.UPSTASH_REDIS_TOKEN
});
```

## PostgreSQL (Neon)

```typescript theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
import { createNeonPostgres, createPostgresSessionStorage } from 'praisonai';

const pg = createNeonPostgres({
  connectionString: process.env.DATABASE_URL
});

const sessions = createPostgresSessionStorage({
  connectionString: process.env.DATABASE_URL
});
```

## CLI Usage

```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
praisonai-ts db info
praisonai-ts db adapters --json
```
