Catches column typosUnknown table errorsEnum value validationcount(*) is bigint, not numberarray element typesYour own casing conventionLATERAL joinsON CONFLICT upsertsMultiple databasesKyselyZod schema validationIncremental adoptionCatches column typosUnknown table errorsEnum value validationcount(*) is bigint, not numberarray element typesYour own casing conventionLATERAL joinsON CONFLICT upsertsMultiple databasesKyselyZod schema validationIncremental adoption
Suggests the right columnInvalid cast detectionAutomatic result typesnumeric → string (no precision loss)Literal type inferencenull vs undefined vs optionalWindow functionsset-returning functionsMonorepo-friendlyDrizzleZod schema generationFlexible query targetingSuggests the right columnInvalid cast detectionAutomatic result typesnumeric → string (no precision loss)Literal type inferencenull vs undefined vs optionalWindow functionsset-returning functionsMonorepo-friendlyDrizzleZod schema generationFlexible query targeting
Type-mismatch detectionAmbiguous column detectionNullability inferencetimestamptz → DateCustom Postgres → TS overridesWrap results as {type}[]Aggregates (sum, array_agg)Validate against a live databasepostgres.jsnode-postgresSQL fragment compositionWrite your own pluginsType-mismatch detectionAmbiguous column detectionNullability inferencetimestamptz → DateCustom Postgres → TS overridesWrap results as {type}[]Aggregates (sum, array_agg)Validate against a live databasepostgres.jsnode-postgresSQL fragment compositionWrite your own plugins
Operator type errorsMissing type annotationsOuter-join nullabilityuuid & enum typesPer-column type overridesCTEs & recursive queriesjson_agg / jsonb_aggShadow DB from your migrationsSlonikSequelizeEditor quick-fixesAWS IAM auth for RDSOperator type errorsMissing type annotationsOuter-join nullabilityuuid & enum typesPer-column type overridesCTEs & recursive queriesjson_agg / jsonb_aggShadow DB from your migrationsSlonikSequelizeEditor quick-fixesAWS IAM auth for RDS
GROUP BY errorsWrong type annotationsNullable aggregatesjson / jsonb result typessnake_case → camelCaseSubqueriesINSERT/UPDATE/DELETE … RETURNINGWatch mode for CIPrisma@vercel/postgresAuto-fix with --fixGROUP BY errorsWrong type annotationsNullable aggregatesjson / jsonb result typessnake_case → camelCaseSubqueriesINSERT/UPDATE/DELETE … RETURNINGWatch mode for CIPrisma@vercel/postgresAuto-fix with --fix