Skip to content

Related Projects

There are many other tools out there, here is a list of popular alternatives.

Note: This research was done with the help of AI, please send a PR if you would like to add or change something.

Languages: Go, TypeScript, Python
Website: sqlc.dev
GitHub: sqlc-dev/sqlc Star

Parses SQL using a full SQL parser and generates type-safe code. Primarily focused on Go.

Differences: Uses SQL parsing instead of runtime introspection. Stronger Go ecosystem support.

Language: TypeScript
Website: pgtyped.dev
GitHub: adelsz/pgtyped Star

Generates TypeScript types from PostgreSQL queries using query parsing and database introspection.

Differences: PostgreSQL-only. Generates types rather than wrapper classes.

Languages: Kotlin, Swift, C++
Website: cashapp.github.io/sqldelight
GitHub: cashapp/sqldelight Star

Generates type-safe Kotlin code from SQL queries. Supports multiple platforms including Android, iOS, and JVM.

Differences: Kotlin-focused with multi-platform support. Uses SQL parsing.

Language: TypeScript
Website: kysely.dev
GitHub: kysely-org/kysely Star

Type-safe SQL query builder with a fluent API. Queries are built at runtime.

Differences: Query builder API vs. raw SQL. Runtime query construction.

Language: C# (.NET)
Website: github.com/DapperLib/Dapper
GitHub: DapperLib/Dapper Star

Micro-ORM for .NET that extends IDbConnection with methods for mapping SQL query results to objects.

Differences: Runtime mapping with extension methods. No code generation.

Languages: TypeScript, JavaScript
Website: prisma.io
GitHub: prisma/prisma Star

ORM with schema language, migrations, and query client.

Differences: Uses schema definitions and query API rather than raw SQL.

Language: TypeScript
Website: orm.drizzle.team
GitHub: drizzle-team/drizzle-orm Star

TypeScript ORM with SQL-like query API and TypeScript schema definitions.

Differences: Schema-first approach with runtime query building.

Language: Python
Website: sqlalchemy.org
GitHub: sqlalchemy/sqlalchemy Star

Python SQL toolkit and ORM with both SQL expression language and high-level ORM API.

Differences: Dual-layer architecture with both SQL and ORM APIs. Runtime query building.

Language: Kotlin
Website: github.com/JetBrains/Exposed
GitHub: JetBrains/Exposed Star

Kotlin SQL framework with both type-safe DSL and lightweight ORM capabilities.

Differences: Kotlin DSL for queries. Runtime query building.

Language: Java
Website: jooq.org
GitHub: jOOQ/jOOQ Star

Generates Java code from database schema and provides a fluent DSL for type-safe queries.

Differences: Schema-first code generation with runtime query builder.

Language: Java
Website: mybatis.org
GitHub: mybatis/mybatis-3 Star

Persistence framework that maps SQL to Java objects using XML or annotations.

Differences: XML-based configuration with runtime mapping.

Language: Java
Website: hibernate.org
GitHub: hibernate/hibernate-orm Star

Mature Java ORM implementing JPA specification with extensive features and ecosystem.

Differences: Full-featured ORM with entity management, caching, and lazy loading.

Language: Java
Website: jakarta.ee/specifications/persistence

Java standard specification for object-relational mapping. Implemented by Hibernate, EclipseLink, and others.

Differences: Standard API specification. Implementations provide full ORM features.