# quackdb v0.1.0 - Table of Contents

> Remote DuckDB Quack protocol client for Elixir

## Pages

- [QuackDB](readme.md)

- Guides
  - [Getting started](getting-started.md)

- Research
  - [QuackDB Research](research.md)
  - [Postgrex comparison notes](postgrex-comparison.md)

## Modules

- [Ecto.Adapters.QuackDB](Ecto.Adapters.QuackDB.md): Minimal Ecto SQL adapter for QuackDB.
- [Ecto.Adapters.QuackDB.Connection](Ecto.Adapters.QuackDB.Connection.md): Ecto SQL connection callbacks backed by `QuackDB.DBConnection`.
- [QuackDB](QuackDB.md): Remote DuckDB Quack protocol client.
- [QuackDB.Application](QuackDB.Application.md): OTP application entry point for QuackDB.
- [QuackDB.Cursor](QuackDB.Cursor.md): Cursor metadata used by `DBConnection` streaming.
- [QuackDB.DBConnection](QuackDB.DBConnection.md): `DBConnection` implementation for the remote DuckDB Quack protocol.
- [QuackDB.Inspect](QuackDB.Inspect.md): Shared helpers for compact `Inspect` protocol implementations.
- [QuackDB.Protocol](QuackDB.Protocol.md): Quack protocol constants and codec entry point.
- [QuackDB.Protocol.Codec](QuackDB.Protocol.Codec.md): Encoder and decoder for top-level Quack protocol messages.
- [QuackDB.Protocol.DataChunk](QuackDB.Protocol.DataChunk.md): Decoder for DuckDB Quack `DataChunk` payloads.
- [QuackDB.Protocol.LogicalType](QuackDB.Protocol.LogicalType.md): Decoder and metadata helpers for DuckDB logical types.
- [QuackDB.Protocol.Message](QuackDB.Protocol.Message.md): Struct definitions for Quack protocol messages.
- [QuackDB.Protocol.Message.AppendRequest](QuackDB.Protocol.Message.AppendRequest.md): Quack append request structure.
- [QuackDB.Protocol.Message.ConnectionRequest](QuackDB.Protocol.Message.ConnectionRequest.md): Client handshake request sent before issuing queries.

- [QuackDB.Protocol.Message.ConnectionResponse](QuackDB.Protocol.Message.ConnectionResponse.md): Server handshake response with DuckDB and Quack protocol version metadata.

- [QuackDB.Protocol.Message.Disconnect](QuackDB.Protocol.Message.Disconnect.md): Request to close a remote Quack connection.

- [QuackDB.Protocol.Message.ErrorResponse](QuackDB.Protocol.Message.ErrorResponse.md): Server-side Quack error response.

- [QuackDB.Protocol.Message.FetchRequest](QuackDB.Protocol.Message.FetchRequest.md): Request for more result chunks associated with a remote result UUID.

- [QuackDB.Protocol.Message.FetchResponse](QuackDB.Protocol.Message.FetchResponse.md): Response carrying additional result chunks for a prepared query.

- [QuackDB.Protocol.Message.Header](QuackDB.Protocol.Message.Header.md): Message envelope metadata shared by every Quack request and response.

- [QuackDB.Protocol.Message.PrepareRequest](QuackDB.Protocol.Message.PrepareRequest.md): Request to prepare and execute a SQL statement on the remote DuckDB server.

- [QuackDB.Protocol.Message.PrepareResponse](QuackDB.Protocol.Message.PrepareResponse.md): Initial query response containing schema metadata, first chunks, and fetch state.

- [QuackDB.Protocol.Message.SuccessResponse](QuackDB.Protocol.Message.SuccessResponse.md): Empty success response used by protocol operations without result data.

- [QuackDB.Protocol.Reader](QuackDB.Protocol.Reader.md): Binary reader primitives for the Quack wire format.
- [QuackDB.Protocol.Value](QuackDB.Protocol.Value.md): Scalar value conversion for decoded DuckDB vectors.
- [QuackDB.Protocol.Vector](QuackDB.Protocol.Vector.md): Decoder for DuckDB vector encodings inside Quack data chunks.
- [QuackDB.Protocol.Writer](QuackDB.Protocol.Writer.md): Binary writer primitives for the Quack wire format.
- [QuackDB.Query](QuackDB.Query.md): Query metadata used by the DBConnection driver.

- [QuackDB.Result](QuackDB.Result.md): Normalized query result.
- [QuackDB.Stream](QuackDB.Stream.md): Lazy stream returned by `QuackDB.stream/4`.

- [QuackDB.Transport](QuackDB.Transport.md): HTTP transport for Quack binary requests.
- [QuackDB.URI](QuackDB.URI.md): URI normalization for Quack HTTP endpoints.

- Exceptions
  - [QuackDB.Error](QuackDB.Error.md): Structured error returned by the QuackDB client.

