Our great sponsors
-
Prisma
Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
Could you maybe elaborate on what you are basing this on? If you see performance issues with Prisma, I'd definitely like to encourage you to open up a new GitHub issue so that our engineers can improve the situation :) It's true that Prisma Client only has been production-ready for half a year and we've overall been following a "make it work, make it right, make it fast" approach with building our tools. While performance indeed has not been our major focus yet, we have see very few people see running into actual performance issues. And if there are such cases, we are very eager to solve the performance issues with you and are very reactive on GitHub. If you ever had any, I'd love to learn more about the exact performance issues you saw with Prisma!
I think another benefit that's not to be underestimated when using Prisma is the level of type-safety it provides. Prisma's type-safety is superior to all other ORMs in the TypeScript ecosystem (we have a detailled comparision with TypeORM in our docs). You may get similar levels of type-safety with SQL TypeScript libraries (like Slonik or pgtyped) which might be great alternatives if you absolutely want to work with raw SQL. But if you prefer to work with a higher level abstraction and don't want to compromise on type-safety, Prisma will certainly be the best choice!
What exactly do you mean with a bulk API? As of now, Prisma provides updateMany and deleteMany operations. There's also the $transaction method which you can use for bulk creates and other bulk operations (plus we're also working on extending the Prisma Client API, e.g. with `createMany operations).