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

# Client-Side Databases

> Store data locally in the browser with IndexedDB or TursoDb

BlazorEssentials provides two client-side database options for Blazor WebAssembly applications,
enabling offline-capable, local-first experiences.

<CardGroup cols={2}>
  <Card title="IndexedDB" icon="box-archive" href="/blazoressentials/guides/databases/indexeddb">
    NoSQL key-value storage using the browser's built-in IndexedDB API.
    Great for caching, offline data, and simple object storage.
  </Card>

  <Card title="TursoDb" icon="database" href="/blazoressentials/guides/databases/tursodb">
    Full SQLite database with SQL queries, transactions, and optional
    Turso Cloud sync for multi-device experiences.
  </Card>
</CardGroup>

## Choosing a Database

| Feature         | IndexedDB            | TursoDb                    |
| --------------- | -------------------- | -------------------------- |
| Data Model      | Key-value / Document | Relational (SQL)           |
| Query Language  | JavaScript API       | SQL                        |
| Relationships   | Manual               | Foreign keys               |
| Transactions    | Yes                  | Yes                        |
| Cloud Sync      | No                   | Yes (Turso Cloud)          |
| Browser Support | All modern browsers  | Requires SharedArrayBuffer |
| Schema          | Dynamic              | Defined with attributes    |

<Tip>
  Use **IndexedDB** for simple caching and document storage. Use **TursoDb** when you need
  SQL queries, relationships, or cloud synchronization.
</Tip>
