zanith

Production

The engine ships with the moving parts a production team would otherwise build — query interception, observability, tenant isolation, ranked search, typed wrappers for the four Postgres extensions Zanith treats as first-class.

What lives here

PageCovers
[Plugins](/docs/production/plugins)ZanithPlugin, the three hooks, registration, the interception model.
[Observability](/docs/production/observability)consoleLogger, slowQueryLogger, structuredLogger, openTelemetryPlugin.
[Multi-tenancy](/docs/production/multi-tenancy)rowLevelTenancy, schemaBasedTenancy, databaseBasedTenancy — pick by isolation needs.
[Search](/docs/production/search)search() for ranked text + trigram + vector. tsvectorSetupSql for the column and trigger. facets for filter UIs.
[Postgres extensions](/docs/production/extensions)Typed helpers for pgvector, pg_trgm, pgcrypto, pg_cron.

Everything is built on the same surface

The four observability plugins, the three tenancy strategies, and any plugin you author all use the same three hooks: onQuery, onResult, onError. There's no privileged interface — start with Plugins if you want the model.