Docs
SQL & Compatibility

Extensions

Which PostgreSQL extensions load in the Silos WASM runtime — and which heavyweight ones don't.

Silos runs Postgres inside a WebAssembly runtime. Many PostgreSQL extensions load and run there, but some heavyweight ones aren't available in WASM. This page is the honest list of what works today.

Supported

These extensions load in the Silos WASM runtime:

ExtensionWhat it adds
pgvectorVector similarity search — store embeddings and run nearest-neighbor queries.
pg_trgmTrigram matching for fuzzy text search and similarity.

Enable an extension the standard way:

enable-extension.sql
CREATE EXTENSION IF NOT EXISTS vector;
CREATE EXTENSION IF NOT EXISTS pg_trgm;

Vector search with pgvector

pgvector.sql
CREATE EXTENSION IF NOT EXISTS vector;

CREATE TABLE documents (
  id        bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
  content   text,
  embedding vector(1536)
);

-- Nearest neighbors by cosine distance
SELECT id, content
FROM documents
ORDER BY embedding <=> '[0.1, 0.2, ...]'
LIMIT 5;

Fuzzy matching with pg_trgm

pg_trgm.sql
CREATE EXTENSION IF NOT EXISTS pg_trgm;

SELECT name, similarity(name, 'postgers')
FROM products
WHERE name % 'postgers'
ORDER BY similarity(name, 'postgers') DESC;

Not available

Heavyweight extensions that don't run in the WASM runtime today:

ExtensionWhy
TimescaleDBLarge, deeply integrated extension — not available in the WASM runtime.
CitusDistributed-Postgres extension — not available in the WASM runtime.

If your workload depends on one of these, a traditional managed Postgres is the better fit today — see When to use Silos.

Silos is in active development and the extension set is still expanding. The two extensions listed under Supported are what you can count on right now; treat the broader Postgres extension ecosystem as rolling out. Check this page before depending on a specific extension.

Next steps

On this page