Objection.js
kysely
Objection.js | kysely | |
---|---|---|
23 | 42 | |
7,203 | 4,444 | |
0.1% | - | |
8.5 | 9.5 | |
2 days ago | about 1 year ago | |
JavaScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Objection.js
-
Top 6 ORMs for Modern Node.js App Development
Objection.js is a SQL-friendly ORM for Node.js that supports various relational databases, including PostgreSQL, MySQL, and SQLite. It provides a flexible and expressive query builder. Objection.js is known for its expressive syntax, allowing developers to build complex queries easily. It supports eager loading, transactions, and migrations.
-
Best ORM library?
I don't think there's a best per say, but we did recently use Objection on our project. Did the job well, only issue is there's no constructor for the DB Models but it's just something you work around (https://vincit.github.io/objection.js/)
- Is objection.js actually being sunset?
-
Simple postgres 'ORM' for node project?
If you aren't using TypeScript I'd very much recommend Objection.js, I've used it multiple times and no complaints so far. You can pass raw SQL queries to it as well so I'm sure it would be a good fit for your project!
- Which ORM are you using with Node?
-
Migrating from Sequelize to Knex + Objection
I'd also like to point out objection js is no longer actively maintained. I'm going to switch my work's codebase from it eventually because of it.
- Well, shit. Objection.js has been sunset, which ORM/querybuilder did you move to?
-
Is it best practice to use classes with extends?
You should look into Objection.js. IMHO using that will make your life much easier as it seems you are trying to reimplement it's features in this sample code.
- Objection.js ORM Needs a New Maintainer
-
Exploring the repository pattern with TypeScript and Node
Next, let’s set up the database for our newly created Nest application. I’ll be using PostgreSQL, but you can use any of the databases Knex supports. To interact with our database, we’ll be using Objection.js, which is an ORM for Node.js built on top Knex. For this tutorial, we’ll be using Nest Objection, a Nest module for Objection.
kysely
-
I made a Twitter clone using Deno and Fresh
Did you check https://github.com/koskimas/kysely ? It was great when I used it. It has great TS support.
- Full-Stack TypeScript with tRPC and React
- Kysely
-
Type-safe S3 Select queries with Kysely
That’s where Kysely comes to the rescue: Kysely is a type-safe and devX-friendly typescript SQL query builder. It was designed to work with PostgreSQL and MySQL, but it exposes a few classes that can let us write queries without being connected to an actual relational database.
- Vue and trpc?
-
Announcing a new TypeScript ORM
prisma (mentioned in the article), zapatos, pgtyped and kysely are the most popular currently I think.
switch between a limited interface and a query builder (MikroORM, TypeORM). This feels like using two different libraries, switching between two different sets of limitations. Kysely is a nice query builder with good TS support, but MikroORM is using Knex instead so you're losing TS, and TypeORM has a custom query builder, less user-friendly than Knex.
-
Which ORM do you prefer with nodejs/Typescript project and why ?
I'd love to see Kysely as an option.
-
You might not need an ORM
Kysely[1] and zapatos[2] are excellent solutions for type-safe typescript query builders. It’s hard to go back to the days of spending 20-30% of your time in the object mapping layer.
[1] https://github.com/koskimas/kysely
-
Simple CQRS in NodeJS with Typescript
Querying the database (PostgreSQL) should not be ground breaking. Personally I like to have full type-safety so we can easily catch bugs during the development time without introducing any tests that are just testing the data type from our datastore to match the data type our API expects. I like to go database schema first, which means that we generate types from the database schema and work with those. Any change to the schema of the database is made with SQL migrations and after that, the typescript types are regenerated. Another approach is to use a code-first tool like TypeORM or Prisma. However in my experience such tools often produce not efficient SQL queries and are less easy to extend. In my projects I use library kysely (https://github.com/koskimas/kysely) with kysely-codegen (https://github.com/RobinBlomberg/kysely-codegen) to have a full type-safe SQL builder.
What are some alternatives?
Sequelize - Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i.
Knex - A query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.
TypeORM - ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
pgtyped - pgTyped - Typesafe SQL in TypeScript
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
Bookshelf - A simple Node.js ORM for PostgreSQL, MySQL and SQLite3 built on top of Knex.js
Mongoose - MongoDB object modeling designed to work in an asynchronous environment.
typetta - Node.js ORM written in TypeScript for type lovers.
node-mssql - Microsoft SQL Server client for Node.js
express-ts-base - used for my small projects as base