postgres
Prisma
postgres | Prisma | |
---|---|---|
42 | 444 | |
6,722 | 37,241 | |
- | 0.9% | |
8.2 | 9.9 | |
4 days ago | 7 days ago | |
JavaScript | TypeScript | |
The Unlicense | Apache License 2.0 |
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.
postgres
-
Neon Is Generally Available: Serverless Postgres
I want to use this as a chance to bring attention to a GitHub issue that I think would help reduce friction for Neon:
https://github.com/neondatabase/neon/issues/4989
If the Neon driver were to allow us to easily pass in a localhost connection, the development and test experience would be easier. Perhaps Neon could swap to something like this internally: https://github.com/porsager/postgres.
Having run a local dev environment connected to Neon and tests connected to Neon got in our way of adoption. We'd prefer to develop and run tests against a regular Postgres localhost database.
To the PMs of Neon, put yourself in the shoes of a new developer thinking of giving Neon a try. What changes will I have to make to my code and my development workflow?
-
Drizzle is just as unready for prime-time as Prisma, what else is there?
I'd push you to consider using postgres, slonik or similar for database queries. With these libraries, you just write SQL, but they perform input sanitization for you. So you can safely write:
- Ask HN: If you were to build a web app today what tech stack would you choose?
-
PostgresJs: The Fastest full featured PostgreSQL client for Node.js and Deno
Thanks Pier! Your comment saved me some frustration here :-D
https://github.com/porsager/postgres/discussions/627#discuss...
-
We migrated to SQL. Our biggest learning? Don't use Prisma ORM
There's a core client interface here:
- https://www.postgresql.org/docs/current/client-interfaces.ht...
On what makes it postgres.js faster, from author himself:
> it seems Postgres.js is actually faster than, not only pg, but of any driver out-there
- https://github.com/porsager/postgres/discussions/627
- https://porsager.github.io/imdbench/sql.html
-
Relational is more than SQL
When viewed as a DSL for set theory, views, CTEs, set-returning functions, et al are indeed proper first-class query abstractions.
When viewed through the lens of general purpose imperative or functional programming languages, it's easy to see how it can be seen as falling short.
I'll admit much of the tooling and driver APIs leave a lot to be desired.
Some tools do make good efforts though such as nested fragments in this driver.
https://github.com/porsager/postgres#building-queries
-
SQLite-based databases on the Postgres protocol? Yes we can
I don't think this should turn in to an ORM or not debate, but there are plenty of reasons, especially for the crowd that would do anything to avoid ORMs. Just try to take a peek into the multitude of "ORMs are bad" articles / discussions.
For instance - I would love to be able to use https://github.com/porsager/postgres with sqlite.
-
Is ORM still an anti-pattern?
Demonstrate how easily and accidentally one can make an SQL injection with these:
https://github.com/porsager/postgres
https://github.com/gajus/slonik
-
Storage on Vercel
They've looked at Postgres.js (https://github.com/porsager/postgres) before — wouldn't mind if they enabled those other cases in the same way.
Prisma
-
A Software Engineer's Tips and Tricks #1: Drizzle
In the world of software development, there are two kinds of developers: those who have never had to complain about ORMs and those who have actually used them. Whether it’s Django ORM for Python, Active Record for Ruby, GORM for Golang, Doctrine for PHP, or Prisma for TypeScript, a common issue persists: writing simple queries is straightforward, but constructing complex or optimized queries can take hours, if not days.
-
Stories Behind ZenStack V2!
Support for a Union type #2505
-
Deploy Full-Stack Next.js T3App with Cognito and Prisma using AWS Lambda
generator client { provider = "prisma-client-js" binaryTargets = ["native", "rhel-openssl-1.0.x"] } datasource db { provider = "postgresql" // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below // Further reading: // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string url = env("DATABASE_URL") } model Post { id Int @id @default(autoincrement()) name String createdAt DateTime @default(now()) updatedAt DateTime @updatedAt createdBy User @relation(fields: [createdById], references: [id]) createdById String @@index([name]) } // ... rest of the schema
-
End-To-End Polymorphism: From Database to UI, Achieving SOLID Design
Unfortunately Prisma hasn’t supported polymorphism yet. As such, you can't use inheritance to model the entity in the same way as in your programming language, as depicted in the above class diagram. The good news is that we could intimate it using table inheritance to imitate it.
-
Next.js App Router Course
In this project I am manually declaring the data types. For better type-safety, use Prisma, which automatically generates types based on your database schema.
-
Next.js 14: Fetching Data
When you're creating a full-stack application, you'll also need to write logic to interact with your database. For relational databases like Postgres, you can do this with SQL, or an ORM like Prisma.
- Utilizando Testcontainers para Testes de Integração com NestJS e Prisma ORM
-
Building an Admin Console With Minimum Code Using React-Admin, Prisma, and Zenstack
Prisma is a modern TypeScript-first ORM that allows you to manage database schemas easily, make queries and mutations with great flexibility, and ensure excellent type safety.
-
How to add Passkey Login to Next.js using NextAuth and Hanko
Prisma
-
Taming cross-service database transactions in NestJS with AsyncLocalStorage
There have been multiple feature requests to add native support for AsyncLocalStorage to Prisma, but they haven't been met with much enthusiasm from the maintainers. Some people solved it by extending and overriding the client (which is arguably prone to breaking with updates).
What are some alternatives?
pg-promise - PostgreSQL interface for Node.js
Knex - A query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.
trpc - 🧙♀️ Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
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.
slonik - A Node.js PostgreSQL client with runtime and build time type safety, and composable SQL.
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.
prisma-redis-middleware - Prisma Middleware for caching queries in Redis
Mongoose - MongoDB object modeling designed to work in an asynchronous environment.
MySQL - A pure node.js JavaScript Client implementing the MySQL protocol.
MikroORM - TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, MS SQL Server, PostgreSQL and SQLite/libSQL databases.
PostgreSQL - PostgreSQL client for node.js.
lucid - AdonisJS SQL ORM. Supports PostgreSQL, MySQL, MSSQL, Redshift, SQLite and many more