OSS TanbouSign in with GitHub

keep SQL structure visible while using TypeScript inference for safe queries and result types

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
14,261
Primary language
TypeScript
License
MIT
Repository last updated
Oct 5, 2026
On this page

Overview

Kysely is a type-safe SQL query builder for TypeScript. It tracks tables, columns, aliases, joins, and subqueries through the type system so developers can keep SQL concepts explicit while getting autocomplete and inferred result types.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Track tables, columns, and aliases through TypeScript types

SELECTs, joins, subqueries, and WITH clauses constrain which tables and columns are visible, while selected columns and aliases are reflected in the inferred result type.

Sources: [1]

Use one query-builder model across PostgreSQL, MySQL, MSSQL, and SQLite-family databases

The README provides getting-started paths for PostgreSQL, MySQL, Microsoft SQL Server, SQLite, PGlite, and more, and notes support for Node.js as well as Deno, Bun, Cloudflare Workers, and browsers.

Sources: [1]

Best fit

Fits TypeScript backends that prefer SQL-level control over heavier ORM abstractions

It is useful when joins and subqueries should remain explicit while compile-time checking and autocomplete reduce query mistakes. Escape hatches such as the sql template tag are available when static typing cannot express a query.

Sources: [1]

Before adoption

Version 0.29.6 requires Node 22 or newer and ships as an ES module

The 0.29.6 package metadata requires Node.js 22+ and publishes the package as ESM. When integrating with Next.js or another server framework, check the runtime baseline together with the selected database driver's requirements.

Sources: [2]

The query builder does not replace database connection and driver design

Kysely builds typed SQL, while connection pools and network access depend on the chosen dialect and driver. Serverless and edge deployments still need an explicit plan for connection limits, pooling, and transactions with the database provider.

Sources: [1][2]

Official sources

  1. [1]Kysely v0.29.6 README(2026-10-06)
  2. [2]Kysely v0.29.6 package metadata(2026-10-06)
  3. [3]Kysely v0.29.6 release(2026-10-06)
Supplemental curator note

It fits TypeScript backends that want SQL-level control rather than a heavier model abstraction. Check the Node/ESM baseline and choose dialect, driver, and connection-pool behavior for the deployment runtime.

Try it in 3 steps

  1. 1

    Get the source

    git clone --depth 1 https://github.com/kysely-org/kysely.git
  2. 2

    Enter the repository

    cd kysely
  3. 3

    Check the official steps

    Continue with the commands in the README Installation, Quick Start, or Getting Started section.

    find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
Check the official README

Growth

Growth trends · Last 30 days

14,261 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
40
Open PRs
39

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • typescript
  • database
  • postgresql
  • mysql
  • sqlite
  • query-builder
  • type-safe
  • sql
  • nodejs
  • deno
  • browser
  • bun
Stars
14,261
Forks
449
Watchers
28
Open issues
142
Contributors
159
Owner type
Organization
Primary language
TypeScript
License
MIT
Repository last updated
Oct 5, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?