ts-safeql/safeql

Validate and auto-generate TypeScript types from raw SQL queries in PostgreSQL.

TypeScript

1,569

357 commits

updated Oct 1, 2026

See the code

README

SafeQL - Automatic Type Inference & Validation for PostgreSQL Queries • Get started

npm version

https://user-images.githubusercontent.com/10504365/192807716-6a4fcbc1-9dc8-4d3b-a63b-2c95c0061689.mp4

Features

  • ⚡️ Automatic Type Inference & Validation:

    SafeQL automatically infers the type of the query result based on the query itself.

  • SafeQL works with any PostgreSQL client, including Prisma, Sequelize, pg, Postgres.js, and more.

  • 🛠️ Easy To Use

    SafeQL was built in mind to be easy to use and integrate with your existing codebase.

  • 📦 Built with Monorepos & Microservices in mind:

    SafeQL was built with monorepos and microservices in mind, and it's easy to use with multiple databases.

Install

I would first recommend follow the instructions in the documentation.

Prerequisites

Set up ESLint following the typescript-eslint Getting Started docs, to enable TypeScript language support in ESLint.

npm install --save-dev @ts-safeql/eslint-plugin libpg-query

Sponsors

eslint
eslint-plugin
javascript
lint
postgres
sql
typescript

ts-safeql/safeql

Validate and auto-generate TypeScript types from raw SQL queries in PostgreSQL.

TypeScript

1,569

357 commits

updated Oct 1, 2026

See the code

README

SafeQL - Automatic Type Inference & Validation for PostgreSQL Queries • Get started

npm version

https://user-images.githubusercontent.com/10504365/192807716-6a4fcbc1-9dc8-4d3b-a63b-2c95c0061689.mp4

Features

  • ⚡️ Automatic Type Inference & Validation:

    SafeQL automatically infers the type of the query result based on the query itself.

  • SafeQL works with any PostgreSQL client, including Prisma, Sequelize, pg, Postgres.js, and more.

  • 🛠️ Easy To Use

    SafeQL was built in mind to be easy to use and integrate with your existing codebase.

  • 📦 Built with Monorepos & Microservices in mind:

    SafeQL was built with monorepos and microservices in mind, and it's easy to use with multiple databases.

Install

I would first recommend follow the instructions in the documentation.

Prerequisites

Set up ESLint following the typescript-eslint Getting Started docs, to enable TypeScript language support in ESLint.

npm install --save-dev @ts-safeql/eslint-plugin libpg-query

Sponsors

eslint
eslint-plugin
javascript
lint
postgres
sql
typescript

Significant stargazers

(top 24 of 31)

Yosuke Ota

768 followers · starred Sep 2022

JounQin

673 followers · starred May 2023

Anton Medvedev

3,232 followers · starred Mar 2024

Robert Estelle

73 followers · starred Dec 2025