Ecosystem and Client Compatibility

Ecosystem and Client Compatibility

CedarDB is compatible with the PostgreSQL protocol version 3 and aims to support many PostgreSQL-compatible tools and connectors out of the box. Since CedarDB does not share a codebase with PostgreSQL and we are still in the process of achieving full backend compatibility, not all functionality will work out of the box. This page contains a list of clients, libraries, and other ecosystem components that we have verified to work with CedarDB. This list is by no means exhaustive, and many other tools should work as well.

ℹ️
If you come across something you feel is missing from the list, feel free to drop us a line on Slack or add it to the docs directly.

Supported Clients and Libraries

Through both SQL dialect and backend compatibility, CedarDB works with a wide range of PostgreSQL connectors for end-user tools like Graphana and programming language drivers like JDBC.

Applications

ApplicationVersionSupport StateDetails
DataGrip2024.2.2PartialDocumentation
DBeaver24.2.2PartialDocumentation
Grafana10.4.2PartialDocumentation

Programming Language Libraries

LanguageFrameworkVersionSupport StateDetails
C#Npgsql8.0.4FullDocumentation
C++libpqxx7.9.1FullDocumentation
JavaJDBC42.7.4FullDocumentation
JavaScriptnode-postgres8.13.0FullDocumentation
Pythonpsycopg22.9.10Full
psycopg3.2.3FullDocumentation
RRPostgres1.4.7FullDocumentation
Rusttokio-postgres0.7.12FullDocumentation

Extensions

Because extensions rely heavily on the internal structure of PostgreSQL, and because CedarDB does not share a codebase with PostgreSQL, CedarDB is generally not compatible with PostgreSQL extensions. However, since the functionality provided by extensions complements use cases not covered by raw SQL, we plan to integrate the functionality of the most popular extensions into CedarDB with language and interface compatibility.

pgvector

CedarDB supports vector similarity search with the same interface and behavior as the PosgreSQL extension pgvector. A more detailed description can be found in our vector functionality documentation.