https://github.com/unlight/prisma-tech-talk
Tech talk about Prisma 2 (unfinished)
https://github.com/unlight/prisma-tech-talk
prisma2 tech-talk tech-talks
Last synced: 11 months ago
JSON representation
Tech talk about Prisma 2 (unfinished)
- Host: GitHub
- URL: https://github.com/unlight/prisma-tech-talk
- Owner: unlight
- Created: 2020-05-16T12:16:18.000Z (about 6 years ago)
- Default Branch: gh-pages
- Last Pushed: 2020-12-22T21:03:20.000Z (over 5 years ago)
- Last Synced: 2025-06-01T01:59:57.118Z (about 1 year ago)
- Topics: prisma2, tech-talk, tech-talks
- Language: TypeScript
- Homepage:
- Size: 300 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# prisma-tech-talk
- https://unlight.github.io/prisma-tech-talk/presentation.html
## Contents
- Comparison of tools
- What is Prisma Framework
- How it works
- Schema.Prisma
- Example of user.findOne (type safe)
- Example of write operations (with connect)
- Aggregation example
- Integration with TypeGraphQL / NestJS
- Competitors
## Prisma
- http://prisma.io/
## Resources
- https://isprisma2ready.com/
- https://www.prisma.io/docs/concepts/overview/what-is-prisma
- https://www.prisma.io/docs/concepts/components/prisma-client/crud
- https://github.com/prisma/prisma
- https://www.prisma.io/docs/understand-prisma/why-prisma/
- https://www.prisma.io/docs/understand-prisma/introduction
- https://www.prisma.io/docs/getting-started/quickstart-typescript
- https://www.prisma.io/blog/comparing-sql-query-builders-and-orms-dkuixe3aa5a2 - Comparing SQL, Query Builders, and ORMs
- https://www.prisma.io/docs/understand-prisma/under-the-hood
- https://www.prisma.io/blog/prisma-2-beta-b7bcl0gd8d8e/
- https://softwareengineeringdaily.com/2020/06/04/prisma-modern-database-tooling-with-johannes-schickling/ - Prisma: Modern Database Tooling with Johannes Schickling
- https://softwareengineeringdaily.com/wp-content/uploads/2020/06/SED1083-Prisma.pdf
- https://hwcdn.libsyn.com/p/0/f/9/0f9e125d938f983a/2020_06_04_Prisma.mp3?c_id=74752949
- https://www.youtube.com/watch?v=WSyaBOAZFZY - Prisma 2 in Action - Matt Mueller @ PrismaDay 2019
- https://www.youtube.com/watch?v=NZpawq8eJOc - Founder Keynote - Johannes Schickling @ PrismaDay 2019
- https://www.youtube.com/watch?v=tw1E9vVYWa8 - Prisma 2 Beta
- https://www.youtube.com/watch?v=3Pxj-4IrOcs - Should you use Sequelize, TypeORM, or Prisma?
- https://www.youtube.com/watch?v=OloBAdNCnyQ - Code first GraphQL Server Development with Prisma — Nikolas Burk @ GraphQL Conf 2019
- https://www.youtube.com/watch?v=eH5mleAvnms - Prisma 2 Sneak Peak
- https://www.codemochi.com/blog/2019-06-26-prisma-2-sneak-peak
- https://itnext.io/lets-take-prisma-2-for-a-test-drive-on-aws-lambda-with-graphql-%EF%B8%8F-f4be711e93cc - Lets take Prisma 2 for a test drive on AWS Lambda with GraphQL
- https://medium.com/@abhiaiyer/prisma-client-101-5eed06eee1fa - About Prisma 1
- https://www.youtube.com/watch?v=jAxE8z6xpl8 - Prisma 2: Modern database tools for Node.js and TypeScript
- https://www.youtube.com/watch?v=NSk9NfeJCd8 - Getting Started With Prisma 2
- https://www.opencrud.org/
- https://github.com/AhmedElywa/prisma-tools
- https://github.com/BuildingXwithJS/exploring-prisma
- https://www.youtube.com/watch?v=mxUVBde8mDQ - BxJS - What is Prisma.io? Exploring database toolkit
- https://github.com/catalinmiron/awesome-prisma
- https://github.com/topics/prisma?o=desc&s=updated
- https://github.com/topics/prisma2?o=desc&s=updated
- https://github.com/hexrcs/fullstack-graphql-next-nexus-prisma
- https://www.prisma.io/blog/announcing-prisma-2-zq1s745db8i5
- https://www.prisma.io/blog/announcing-prisma-2-zq1s745db8i5#why-prisma-is-not-like-existing-db-tools--orms
- https://www.youtube.com/watch?v=Bqacj0iOL68 - Building a Backend for React with Next.js, Prisma 2, and Postgres
- https://youtu.be/BqztLbj_cN4
- 00:58:45 - Welcome
- 01:03:05 - Keynote
- 01:15:40 - [Prisma 2.0: Productivity and Confidence for your database](https://www.youtube.com/watch?v=avpNAeWKgtM)
- 01:49:50 - Happy Table Friends: Relations in Prisma
- 02:33:37 - Data Discovery with Studio
- 02:40:57 - Showcase: Building a Calendar App with Prisma
- 02:49:20 - Serverless Prisma 2 with GCP Cloud Run
- 03:31:49 - How Prisma Solves the N+1 Problem in GraphQL Resolvers
- https://github.com/timsuchanek/n-plus-one
- 04:07:24 - Showcase: Prisma Admin React Component
- 04:13:37 - Prisma VSCode Extension
- 04:18:50 - Type-Safety Beyond TypeScript
- 04:24:54 - Showcase: Accessing Databases using NestJS with Prisma
- 04:47:30 - RedwoodJS: Bringing Full-Stack to the Jamstack
- 05:22:09 - Blitz: the Full-Stack React Framework
- 05:58:42 - The Jamstack and Your Data
- 06:37:42 - Closing
- https://www.reddit.com/r/typescript/comments/icbey2/which_orm_should_i_use/
- https://medium.com/better-programming/prisma-vs-typeorm-60d02f9dac64
- https://www.youtube.com/watch?v=lF8DV_ICIpY Prisma - The Easiest Way to Work with a Database in Next.js
- https://www.youtube.com/watch?v=a6afTgE3btI - Prisma Roadmap
- https://www.prisma.io/docs/concepts/more/comparisons
- https://www.prisma.io/docs/concepts/overview/prisma-in-your-stack/is-prisma-an-orm
- https://www.prisma.io/dataguide/database-tools/top-nodejs-orms-query-builders-and-database-libraries-in-2020
## FAQ
#### What about dynamic provider?
Currently, when generating a Prisma Client, it is specific to a provider (sqlite, postgres or mysql). You cannot reuse the same client and specify a provider which it wasn't generated for. But there is a feature request to do that.
https://github.com/prisma/prisma/issues/1487#issuecomment-633566370
#### MongoDB support for Prisma 2?
In progress
https://github.com/prisma/prisma/issues/1277
#### Performance
Not a goal for the beta, optimization will be later
https://github.com/prisma/prisma/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+performance
#### Transactions
https://github.com/prisma/prisma-client-js/issues/667
https://github.com/prisma/prisma/issues/1844
Use write operations with `connect`
Since 2.1.0 available as experimrntal feature (explicit transactions)
#### Multiple schema files
https://github.com/prisma/prisma/issues/2377
#### Atomic operations
https://github.com/prisma/prisma-client-js/issues/655
https://www.prisma.io/docs/concepts/components/prisma-client/crud#atomic-operations-on-update
#### ORM can resolve n + 1 problem too
https://mikro-orm.io/docs/nested-populate
Yes, but no type safety in this example.
https://github.com/typeorm/typeorm/blob/master/docs/eager-and-lazy-relations.md
In this example I must define it as column definition, what if need both lazy and eager...
#### Why ORM is Partial Typesafety
https://sequelize.org/master/manual/typescript.html#usage (bottom of
section Usage, before "Usage without strict types for attributes" section,
spot "console.log(ourUser.projects![0].name")
#### Why middleware as query engine is needed
Possible, to make prisma framework language indepedent, having such query engine allow to create
prisma cient for another language.