# `Tinkex.Application`
[🔗](https://github.com/North-Shore-AI/tinkex/blob/v0.4.0/lib/tinkex/application.ex#L1)

OTP application for the Tinkex SDK.

Initializes ETS tables for shared runtime state, starts Finch pools tuned for
the default base URL, and supervises client-facing processes. Additional pools
can be started in the host application if multiple tenants need isolated pool
sizing.

## Pool Configuration (Python Parity)

Python SDK uses `httpx.Limits(max_connections=1000, max_keepalive_connections=20)`.
Tinkex configures Finch pools to approximate these limits:

- `pool_size` - connections per pool (default: 50, env: `TINKEX_POOL_SIZE`)
- `pool_count` - number of pools (default: 20, env: `TINKEX_POOL_COUNT`)
- Total connections = pool_size * pool_count = 1000 (matching Python's max_connections)

Override via application config or environment variables:

    # config.exs
    config :tinkex,
      pool_size: 100,
      pool_count: 10

    # Environment variables
    export TINKEX_POOL_SIZE=100
    export TINKEX_POOL_COUNT=10

# `default_pool_count`

```elixir
@spec default_pool_count() :: pos_integer()
```

Returns the default pool count.

# `default_pool_size`

```elixir
@spec default_pool_size() :: pos_integer()
```

Returns the default pool size.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
