OPTIONAL POSTGRESQL FEATURES

Add the database features you need.

Add PostGIS, pgvector, TimescaleDB, or another supported extension without making every application carry features it never uses.

EXTENSION CATALOG

Find the feature your application needs.

Filter by .NET API or task. Every support claim links to its technical guide.

.NET API
WORKLOAD
VEC1.1 RC public
Vector search

pgvector

Vector, half-vector, sparse-vector, and distance operators.

Works with
ADO.NET + EF
PostgreSQL support
15–19
Read technical evidence
HSTO1.1 RC public
Key/value data

hstore

Key/value mapping works in ADO.NET and EF Core, including arrays.

Works with
ADO.NET + EF
PostgreSQL support
15–19
Read technical evidence
LTRE1.1 RC public
Hierarchies

ltree

Typed .NET values for paths and PostgreSQL hierarchy queries.

Works with
ADO.NET + EF
PostgreSQL support
15–19
Read technical evidence
DURPreview
Durable workflows

pg_durable

Evaluation only. The upstream preview is not approved for production use.

Works with
ADO.NET
PostgreSQL support
17 / 0.2.5 gate
Read technical evidence
TS1.1 RC public
Time series

TimescaleDB

TimescaleDB 2.29 queries, including compiled EF Core queries.

Works with
ADO.NET + EF
PostgreSQL support
17 gate
Read technical evidence
SIMPLE SETUP

Choose extensions when your application starts.

Add the extension packages you need before creating the data source. The configuration is then fixed for safe, consistent use, and unused extensions add nothing to the core provider.

View source evidence
Extensions.cs
var dataSource = new BlueTuskDataSourceBuilder(connectionString)
    .UseCitext()
    .UseVector()
    .UsePostGis()
    .Build();

await using var command = dataSource.CreateCommand(
    "SELECT embedding <-> $1 FROM catalog ORDER BY 1 LIMIT 10");

command.Parameters.Add(
    new BlueTuskParameter<BlueTuskVector>(embedding));
BUILD AN EXTENSION

Add support once for ADO.NET and EF Core.

One extension package can define its .NET values, PostgreSQL conversion, feature details, and optional EF Core support.

01

Define values

Create .NET values that keep the meaning of the PostgreSQL type.

02

Convert values

Define how values move between .NET and PostgreSQL in text or binary form.

03

Describe the extension

Tell BlueTusk which features the package provides and requires.

04

Add EF translation

Add optional LINQ and model support without changing the core provider.