Drizzle ORM in 100 Seconds

Поділитися
Вставка
  • Опубліковано 31 січ 2025

КОМЕНТАРІ • 947

  • @Fireship
    @Fireship  11 місяців тому +78

    Check out this video for the full tutorial ua-cam.com/video/hIYNOiZXQ7Y/v-deo.html

  • @TheHermitHacker
    @TheHermitHacker 11 місяців тому +983

    The other cool thing about Drizzle is that it will take multiple queries and handle them as one query to your database rather than multiple. This alone has some real speed benefits.

    • @abhi.r8
      @abhi.r8 11 місяців тому +13

      Who to become a backend developer

    • @lucassilvas1
      @lucassilvas1 11 місяців тому +105

      @@abhi.r8 Me to become a backend developer

    • @alviahmed7388
      @alviahmed7388 11 місяців тому +1

      How did you know that?

    • @abhi.r8
      @abhi.r8 11 місяців тому +11

      @@lucassilvas1 how bro are u getting interviews the job market is fucked big time

    • @abhi.r8
      @abhi.r8 11 місяців тому

      @@alviahmed7388 because I am jobless now year after being laid off 🤪

  • @douwezumker
    @douwezumker 11 місяців тому +716

    This seems like LINQ and entity framework but for typescript, pretty cool imo

    • @stea27
      @stea27 11 місяців тому +38

      That was exactly my 1st thought when I saw the video.

    • @peteruelimaa4973
      @peteruelimaa4973 11 місяців тому +9

      Wtf seriously.

    • @marcuss.abildskov7175
      @marcuss.abildskov7175 11 місяців тому +1

      Look at Deepkit ORM

    • @seannewell397
      @seannewell397 11 місяців тому +5

      Closer to Dapper right?

    • @MartinLiversage
      @MartinLiversage 11 місяців тому +20

      @@seannewell397 No, Dapper has no way to maintain a schema while both Drizzle and EF Core provides a code first approach. Also, both Drizzle and EF Core allow you to write your queries in either TypeScript or C# (using LINQ). Out of the box Dapper doesn't have this feature. Instead you typically provide the SQL as a string which is why some people prefer Dapper: you have complete control of the SQL used.

  • @Banz_FPSB
    @Banz_FPSB 11 місяців тому +97

    Been using Drizzle on my latest project for a few months now, and I think it's absolutely great. Sure there are still a few cases where types can get a bit confusing, but overall it's extremely simple to use, it's basically SQL with type safety. I love it.

    • @DaLoler1
      @DaLoler1 11 місяців тому +3

      Wait how does SQL not have type safety?

    • @ymahtab
      @ymahtab 11 місяців тому +16

      ​@@DaLoler1I think they mean it brings the SQL's type safety into the code for you.

    • @Banz_FPSB
      @Banz_FPSB 11 місяців тому

      @DaLoler1 @@ymahtab Yeah that's what I meant. You wouldn't have much type safety from the TS environment by just sending queries like myDb.query('SELECT * FROM users');, but of course the DBMS itself manages types very well.

    • @thatsalot3577
      @thatsalot3577 11 місяців тому +6

      @@DaLoler1 because SQL is just raw strings ? I still think it's possible to use a linter but IDK, it seems better when your db feels like just another library with constraints instead of random string bs

  • @hexakodeagency868
    @hexakodeagency868 11 місяців тому +53

    Two years ago I started learning software development and struggled to understand what you were talking bout in most of your videos. I'm happy to say now that everything is making sense 😃

    • @mich_thedev
      @mich_thedev 11 місяців тому +3

      The exact same thing here 😊

    • @arcan762
      @arcan762 11 місяців тому +2

      You are just at the peak of the bell curve. Soon everything will start being confusing again. 😐

    • @hexakodeagency868
      @hexakodeagency868 11 місяців тому +1

      @@arcan762 can’t wait 😂

  • @arcan762
    @arcan762 11 місяців тому +348

    Looks cool...
    _Goes back to just rawdogging my SQL code._

    • @agenta6412
      @agenta6412 11 місяців тому +2

      😂

    • @AmlanjyotiSaikia
      @AmlanjyotiSaikia 11 місяців тому +30

      In my entire career I am yet to see any project of anything above trivial complexity where you can solely rely on ORMs. You HAVE to write raw SQL at some point and boy you better learn how to rawdog it good.

    • @saadalmuttakee8469
      @saadalmuttakee8469 11 місяців тому +6

      man of culture 👍

    • @jaideepshekhar4621
      @jaideepshekhar4621 11 місяців тому

      LMAO!

    • @igordasunddas3377
      @igordasunddas3377 11 місяців тому +2

      *Hibernate to devs saying one should learn how to rawdog SQL:* am I a joke to you?
      Seriously though: if you have a database, that requires you to write raw SQL to accomplish something in a performant manner, this means either your database structure or the structure of your entities sucks balls.

  • @ceezar
    @ceezar 11 місяців тому +425

    Devs will do anything to not have to write SQL. Even create a syntax that closely mirrors SQL.

    • @okie9025
      @okie9025 11 місяців тому +98

      the point isn't to avoid writing SQL, it's to introduce types to SQL. If the language is robust enough then you could do some magic like sqlx in Rust, but this is Typescript.

    • @kiramaticc
      @kiramaticc 11 місяців тому +39

      It's not about not writing SQL, it's about ensuring type safety for your queries and the data returned by your queries. Drizzle still has some flaws, like you still can't define views in Typescript files, you still have to do that with raw SQL which isn't so bad, but it's a product gap they've yet to fill (and seems like a mismatch between the dev experience they want to provide). But it has a great developer experience for full stack devs working on Typescript projects. If you know SQL, you don't even really need to "learn" Drizzle. If someone doesn't know SQL, I can see Drizzle as a great gateway into it as it's API very closely resembles the SQL DDL.

    • @ilearncode7365
      @ilearncode7365 11 місяців тому +6

      You arent supposed to write english in source code.

    • @oscarljimenez5717
      @oscarljimenez5717 11 місяців тому +9

      Yeah, that's the point. SQL or CSS aren't safe, you could easily make a mistake and break a lot of things.
      So types are needed.

    • @samuel.ibarra
      @samuel.ibarra 11 місяців тому +4

      @@kiramaticcjust cast your columns in your queries to be exactly the type you expect. Make your columns not null able by default, and rely on the relational model

  • @desiassassin3268
    @desiassassin3268 11 місяців тому +82

    Finally an actual 100 seconds video because there was a freaking 74 seconds ad :) ty fireship

    • @vrnvorona
      @vrnvorona 11 місяців тому +4

      10 seconds only
      also sponsor block

    • @somedooby
      @somedooby 11 місяців тому

      There's always UA-cam Premium

    • @Flame_Dev
      @Flame_Dev 11 місяців тому

      Why are you not using an adblocker?

    • @Ajay-kz9ns
      @Ajay-kz9ns 11 місяців тому

      ​@@somedoobynize joke

  • @federicopisa4465
    @federicopisa4465 11 місяців тому +582

    When you hate SQL so much that you go full circle to just write raw SQL again but with fancy colors

    • @nottheevil
      @nottheevil 11 місяців тому +10

      Well... Yep

    • @atom6_
      @atom6_ 11 місяців тому +48

      This. thank you, it doesnt make any freaking sense. i see this like all the weird crappy javascript frameworks that all think to solve something.

    • @kushalramakanth7922
      @kushalramakanth7922 11 місяців тому +42

      @@atom6_ “Solving problems no one has” seems to be the motto of most tech startups lmao

    • @VladK-1
      @VladK-1 11 місяців тому +105

      With fancy colors, intellisense, DBprogramming language type mapping, and compile-time verification. Plus DB scheme generation, migration scripts, etc utils. This is way more than just a “reinvented SQL”. It’s a full toolkit which makes the life of a software engineer much easier.

    • @mixed_nuts
      @mixed_nuts 11 місяців тому +50

      @@atom6_ it's like y'all want to purposely miss the point. Type safety.

  • @Max_Ivanov_Pro
    @Max_Ivanov_Pro 11 місяців тому +326

    Drizzle seems like the ORM we never knew we needed. Can't wait to try it out on my next project!

    • @LuisSierra42
      @LuisSierra42 11 місяців тому +54

      Crypto bot detected

    • @0644dev
      @0644dev 11 місяців тому +7

      but she's right

    • @94SL3
      @94SL3 11 місяців тому +6

      Famous last words

    • @compositeboson123
      @compositeboson123 11 місяців тому +6

      Julia, is the crypto business booming or not?

    • @hck1bloodday
      @hck1bloodday 11 місяців тому +1

      honestly, looks a lot like EntityFramework

  • @jerseyse410
    @jerseyse410 10 місяців тому +2

    Started using typeORM tonight and stumbled across your Drizzle video and already I'm thinking of moving from typeORM to Drizzle. I love the native SQL query like syntax

  • @conundrum2u
    @conundrum2u 11 місяців тому +173

    "This has been Entity F.... uh Drizzle in 100 seconds"

    • @vrnvorona
      @vrnvorona 11 місяців тому

      Thing is Entity is C#, which no one aside from .net and unity nerds use

    • @conundrum2u
      @conundrum2u 11 місяців тому

      @@theilluminatimember8896 except Entity Framework itself predates TypeORM by at least 13 years, LINQ syntax came out the year prior to that, and the Fluent API for EF came a few years after EF's release.

    • @conundrum2u
      @conundrum2u 11 місяців тому

      @@theilluminatimember8896 not quite...
      LINQ released 2007,
      EF released 2008
      Fluent API for EF released 2013
      TypeORM released 2021

    • @conundrum2u
      @conundrum2u 11 місяців тому

      @@theilluminatimember8896
      2007: LINQ
      2008: Entity Framework
      2011: Fluent API for EF
      2021: TypeORM

    • @conundrum2u
      @conundrum2u 11 місяців тому +14

      @@theilluminatimember8896 EF predates TypeORM by more than a decade. Recent ORMs have been trying to emulate the monad style of EF for years.

  • @timondalton8731
    @timondalton8731 4 місяці тому +1

    Honestly drizzle has been a game changer for our backend. No typical ORM pains since you can still use native SQL inside drizzle. Type safety everywhere. It's awesome.

  • @MisterBlex
    @MisterBlex 11 місяців тому +26

    Reminds me of the Eloquent ORM for Laravel. Loved using that one since the early days of Laravel.

    • @perfect.stealth
      @perfect.stealth 11 місяців тому +3

      The absolute first thing I thought of was Laravel as well 😂

    • @medilies
      @medilies 11 місяців тому +3

      I was horrified when he showed how things are done with prizma.

    • @aditya321998
      @aditya321998 11 місяців тому

      js has lot of catching up to do wrt to laravel

    • @aheendwhz1
      @aheendwhz1 11 місяців тому

      Is Eloquent typed? I thought it just uses unchecked strings for property and even class names, just like Doctrine or any other ORM.

    • @medilies
      @medilies 11 місяців тому

      @@aheendwhz1 it has explicit casting

  • @HelloWorld-rx1iy
    @HelloWorld-rx1iy 11 місяців тому +5

    Waiting for a Kysely video now, its a nice typesafe query builder and does most of the job when an ORM isnt needed.

  • @hamadaelwarky3640
    @hamadaelwarky3640 11 місяців тому +20

    Drizzle seems like a banger!

  • @noberto_brown8549
    @noberto_brown8549 6 днів тому

    man you have a video for every dev software i know, amazing work👏

  • @your_anium
    @your_anium 11 місяців тому +118

    Third video without mentioning AI. You can do it Jeff!

    • @PhillipTTruong
      @PhillipTTruong 11 місяців тому +5

      Please stop being like this

    • @LuisSierra42
      @LuisSierra42 11 місяців тому +1

      AI is our present, past and future

    • @robrider838
      @robrider838 11 місяців тому

      AI writes my EF code for me when I ask nicely.

  • @faraazjan
    @faraazjan 11 місяців тому +1

    This was just what I was looking for yesterday, couldn't decide between Prisma and Sequelize before this, thanks!

  • @soadsam
    @soadsam 11 місяців тому +3

    man i love how fast youve been releasing new videos lately

    • @soadsam
      @soadsam 11 місяців тому

      @btw_i_use_arch the future is so bright

  • @tranceyy
    @tranceyy 11 місяців тому +3

    Everyone's talking about EF, but not about JOOQ for Java. That thing generates types from your actual db tables and allows you to use everything you'd use with sql type-safely. You get out of sync, you get a compile time error. No ORM can ever come close to this.

  • @ElGnomistico
    @ElGnomistico 11 місяців тому +18

    Would love a video comparing Drizzle and Kysely

    • @saadhabashneh5587
      @saadhabashneh5587 11 місяців тому +1

      +1

    • @eduardourias8379
      @eduardourias8379 11 місяців тому +3

      Kysely ftw

    • @nadanke2268
      @nadanke2268 11 місяців тому +4

      kysely is great, don't know why everyone fawns over drizzle

    • @anonAcc575
      @anonAcc575 11 місяців тому +1

      I think it fills the typesafety promise better.

    • @ElGnomistico
      @ElGnomistico 11 місяців тому

      @@anonAcc575 not my major concern with it atm, I basically want less abstraction between me and SQL, but still some ergonomics. Kysely seems like a great strike at that balance

  • @name_my_name
    @name_my_name 11 місяців тому +1

    0:19 ORM doesn't hide SQL's complexity but adds a new level of it in exchange for a reduction of code that is required to map database objects into language-specific ones and vice versa, also you can use your language syntax (depending on ORM) to perform read and write operations from/to the database. But a developer should be well aware of how SQL and ORM work, if one doesn't know first, there will be no way to go beyond simple queries (neither high-performance queries nor complex relationships between tables), if last, the developer will end up "slowly" writing plain SQL. The best way will be to get the benefits of both "worlds", ORM for an average case and SQL for a complex one.
    ORM is not a replacement for SQL it's just a tool to get most of the stuff done faster, but you still need to have a good understanding of SQL.

    • @HellDarkknight
      @HellDarkknight 11 місяців тому

      The sanest comment so far. People don't know the pain before ORMs where one had to use data adapter and dataset to map query results. And most of them don't have enough traffic or query complexity to feel the pain of ORM issues like n+1 queries or just plain bad generated queries.

    • @HellDarkknight
      @HellDarkknight 11 місяців тому

      It's also beyond me on why someone would use ORM in typescript. The whole purpose of typescript is to cover the burning pile of shit called javascript. At least nowadays javascript is solid(shit), unlike diarrhea from 20 years ago.

    • @Keisuki
      @Keisuki 11 місяців тому

      @@HellDarkknight The first years of my career were working on applications that directly used JDBC and mapped the result set to objects manually using methods in Java. It's really very easy to do. We didn't have a single bug in the object mapping part of the code, during the entire 4 years, until a senior developer got creative and wrote his own pseudo-ORM using Java's reflection API, and then we had bugs.

  • @adnandev_
    @adnandev_ 11 місяців тому +3

    Good video as always. Would you please do Mikro-ORM next?

  • @WillDelish
    @WillDelish 11 місяців тому

    So far drizzle has been amazing to use. I love being able to auto generate my types from an existing database

  • @ZacharyClark-n9m
    @ZacharyClark-n9m 11 місяців тому +31

    one(horse)
    many(horses)
    Me: fuck, that's genius.

    • @mukiibipeter07
      @mukiibipeter07 11 місяців тому

      fuck, that's cool.

    • @aheendwhz1
      @aheendwhz1 11 місяців тому +1

      That's the opposite of cool. It means you have to either use wrong grammar (like child => childs) or implement a never-ending list of plural forms, for all languages in the world, where some will still have to use wrong grammar because certain words are not supported or their language is badly supported because there are not so many developers of this language or plural forms are so irregular that you need every single word to be specifically supported in order to generate a plural form.
      Symfony is trying to do this. After 15 years, they have an English and a French pluralization inflector, and they still receive issues with certain words not being supported. This should teach you that you should never attempt to do natural language pluralisation in code!
      But does Drizzle do such form of "automatic" pluralisation? I didn't see that one in the video.

    • @PanosPitsi
      @PanosPitsi 11 місяців тому

      @@aheendwhz1buzzkill

    • @danielkehlibarov
      @danielkehlibarov 10 місяців тому

      ​@aheendwhz1 I don't think you even watched the video or read the docs, what you wrote is pure nonsense and totally irrelevant. :)
      And it's `one(horses) ` btw...

  • @jsoncarr
    @jsoncarr 11 місяців тому

    I just started looking into drizzle yesterday. What perfect timing

  • @radimhof
    @radimhof 11 місяців тому +6

    I'm a fan of query builder Kysely. It's fantastic combo together with prisma for schema and migrations or with atlas.

    • @oscarljimenez5717
      @oscarljimenez5717 11 місяців тому +2

      Kysely es better than Drizzle by far. But it seems that the syntax don't like it to a lot of devs.

  • @kashanghori6952
    @kashanghori6952 11 місяців тому +2

    cool looking ORM , I will try this in my next Nodejs projects

  • @NeatMemesDotCom
    @NeatMemesDotCom 11 місяців тому +33

    Zero days without the nodejs community reinventing the wheel

    • @everythingisfine9988
      @everythingisfine9988 11 місяців тому

      Na, more like conquering the backend services. Still waiting on BE languages to gain "significant" market share in the front end.

    • @xIcarus227
      @xIcarus227 11 місяців тому

      @@everythingisfine9988 that's not gonna happen anytime soon, we've relied so much on JS that adoption for something else will take a long time.
      It doesn't help that the people in charge of WASM are stubborn and won't add direct DOM bindings so we can completely do away with JS. Every time you want to update the DOM you're going through JS so you have to build your own wrappers. Not a huge deal, but annoying.

  • @FeckOffTeaCup
    @FeckOffTeaCup 11 місяців тому +1

    Drizzle seems amazing. Going to use it on my next personal project.

    • @artichokehandler
      @artichokehandler 11 місяців тому

      be prepared to use that “magic sql” feature. The project is so unfinished and not production ready you end up having to write raw SQL half the time.

  • @markovcd
    @markovcd 11 місяців тому +26

    Revolutionary! If we ignore all other ORMs.

    • @aheendwhz1
      @aheendwhz1 11 місяців тому

      How many ORMs actually support a type system to check for the correct property names and types?

    • @RodrigoGonzalezAbate
      @RodrigoGonzalezAbate 11 місяців тому

      ​​@@aheendwhz1hibernate has supported Criteria Queries since 2004, it arrived 20 years late... I understand paid content, and that there wasn't something like this in JS, but... But coincidentally because JS is not typed, why would you want to type the queries? Now it just lacks 20 years of development to offer everything that Hibernate already does, not to mention the integration with Spring, like the auto-generated DAOs and REST controllers.

    • @someDude1368
      @someDude1368 3 місяці тому

      @@aheendwhz1 prisma

  • @RobertMcGovernTarasis
    @RobertMcGovernTarasis 11 місяців тому

    okay this is one of the few videos I need to rewatch when I can sit to do some work. Nice!

  • @stardrake691
    @stardrake691 11 місяців тому +48

    Entity framework core: finally a worthy opponent.

    • @NawfalHasan
      @NawfalHasan 11 місяців тому +19

      Nowhere as ergonomic as Linq still. Linq is goat query language in terms of typesafe-ness and intuitiveness.

    • @EikeSchwass
      @EikeSchwass 11 місяців тому

      @@NawfalHasanuntil you run into runtime exceptions because EF Core couldn't map LINQ to SQL and you didn't get any compiler warnings/errors beforehand.
      It still requires you to know what you are doing and how SQL actually works. It's still amazing of course

    • @NawfalHasan
      @NawfalHasan 11 місяців тому

      @@EikeSchwass as opposed to typescript and drizzle wouldn't run into? My point is Linq IMO is still the 🐐 query language, regardless of how flaky the implementations like EF are. Linq just flows naturally, using the idioms of the language (mostly). While drizzle requires functions like eq for something as primitive as equality.

    • @EikeSchwass
      @EikeSchwass 11 місяців тому +1

      @@NawfalHasan Yeah 100% agree. LINQ-2-Entities just gives you a false sense of security (although Roslyn-Analyzers help a lot). To know when, where and how Linq to Sql translation actually occurs is important and it might appear more trivial than it is (simply because LINQ flows so great). You can't just use any IEnumerable-extension-method, although it reads as if you could/should.
      But I really don't disagree with your point, just that the magic doesn't prevent you from knowing your stuff

    • @NawfalHasan
      @NawfalHasan 11 місяців тому

      @@EikeSchwass agree.

  • @gregou9885
    @gregou9885 11 місяців тому

    Excellent video that convinced me to give neon and drizzle a try for my next project. Currently used to knex to handle the queries but drizzle seems to be a better choice

  • @PapaJuan
    @PapaJuan 11 місяців тому

    Neon is great. Super easy to get going and it works great with vercel. The ability to do everything serverless is also a godsend.

  • @YeasinRafio
    @YeasinRafio 11 місяців тому +8

    Fireship is back with good old classics! And now I want Ai content again

    • @neociber24
      @neociber24 11 місяців тому +2

      Don't worry about it, he is AI

  • @kelvindimson
    @kelvindimson 11 місяців тому +1

    I have this in production, it is amazing!!!

  • @AvenDonn
    @AvenDonn 11 місяців тому +132

    Huh, EntityFramework

    • @lot.bajrami
      @lot.bajrami 11 місяців тому +6

      Yeah plus entity framewokr is mature and much better

    • @dotValkyrie
      @dotValkyrie 11 місяців тому +7

      The difference is that this is for TypeScript

    • @Malix_Labs
      @Malix_Labs 11 місяців тому +13

      Show us how the fuck can you use EntityFramework in JavaScript

    • @_tonypacheco
      @_tonypacheco 11 місяців тому

      ​@@Malix_Labs I file this under "problems you wouldn't have if you didn't feel the need to use JS/TS everywhere"
      There are mature backend frameworks with awesome ORMs.

    • @everythingisfine9988
      @everythingisfine9988 11 місяців тому +6

      Sorry bro, I've used both and Drizzle is far better

  • @nottheevil
    @nottheevil 11 місяців тому +2

    OMG. FINALLY. This is fing masterpiece. I currently use sqlalchemy in python and it uses a similar approach. You have both stupid-like and sql-like code. Finally it's possible to write human-readable code in javascript

  • @humanardaki7911
    @humanardaki7911 11 місяців тому +5

    EntityFrameWork is nice Hibernate is battle tested! both of these have extensions which let you call directly into your database or use fancy fluent apis (LINQ and jooq), why someone start from ground zero developing yet another ORM rather than contributing into what exist already, if they really can,
    i want to see how you deal with nested lazy loaded Many-To-Many mappings and couple of caching layers... did they bother implementing it? cause these matter hell more than optimizing your query in ORM cause sql engine is going it 10x more times anyhow!

    • @fishplayer6320
      @fishplayer6320 11 місяців тому

      I swear do all these EF people not realize this is a js ORM? Do you go to zig or rust forums to complain that there's no need for another programming language because C# exists?

  • @ayaanqui
    @ayaanqui 11 місяців тому

    Sqlc and go-jet/jet for Go, are in my opinion the best option if you don’t want to deal with raw SQL queries (type safety) and also don’t think ORMs are the best fit (complex schema/large DB with many tables). The best part about these 2 libraries is they work on your existing schema. No need to redefine types they are created using the existing DB. Definitely worth checking out.

  • @crowse3200
    @crowse3200 10 місяців тому

    Found this just in time to start writing my postgreSQL queries. Ty!

  • @hashbrown777
    @hashbrown777 11 місяців тому

    Im surprised this wasn't developed earlier. I made this for our proprietary non-relational database software years ago
    No more runtime "hey your raw string query doesn't work", the methods you call can only be chained in specific ways that the compiler (or at least your linter) knows, and at runtime it spits out that raw string (so no objectification overhead)

  • @isaacfink123
    @isaacfink123 11 місяців тому

    One awesome thing about drizzle is the one query guarantee, drizzle never runs more than one query and never transforms the data in js, its pretty neat how they pulled this off, i inspected some queries and they rely on a lot of json functions which is a pretty cool use case for this

  • @dmitriylevy7865
    @dmitriylevy7865 11 місяців тому +2

    Kysely is the best and the only ORM needed for any TS project

  • @Exzyte
    @Exzyte 10 місяців тому

    You learn new things every day. Insane

  • @ibendover4817
    @ibendover4817 11 місяців тому +1

    Seeing non-ai frequent videos gives me hope to go on

  • @3dxspx703
    @3dxspx703 11 місяців тому +6

    Once again, eloquent orm, thanks.

  • @paulmacovei7994
    @paulmacovei7994 Місяць тому

    Absolutely love Drizzle! It's like Tailwind for SQL...

  • @ivlis.w
    @ivlis.w 11 місяців тому +1

    Drizzle is definitely my favorite ORM, pretty easy to use once you learn how to declare your schema, and so powerfull by generating one query from the entire statement
    Still, it may have some issues, like prepared statements having to be explicit, but the most notable I think would be in some parts the documentation..
    When I started learning it I found myself spending more time that I should reading it and still not understanding the exact difference between some things (like drizzle-kit push and migration)
    The prisma-like relations schema seemed a little bit boilerplate and not really well explained either
    And in the SQL-like approach, the aggregates part (the GROUP BY and HAVING) could have more examples
    Or at least that was my experience back then, but last time I checked it had already improved
    I hope it gains more popularity so it keeps polishing those details, since really like the general approach and having things like drizzle studio is so convenient

  • @bacharelkarni
    @bacharelkarni 11 місяців тому

    It's a prisma without the bad side of prisma. hope it works actually as good as said in the video. Anyway, it deserves to be checked up. can't wait to try it in my next project

  • @floriankohler6064
    @floriankohler6064 11 місяців тому

    I have this really long going project which still uses JQuery and raw MySQL queries. I always get sad when I see those cool new technologies which you present on your channel. Really awesome

  • @20hawkar10
    @20hawkar10 11 місяців тому

    I mean this has been done in SQLAlchemy for years, and you get a ORM too! Cool to see it comes to JS/TS too.

  • @ajzack983
    @ajzack983 11 місяців тому +3

    neon is great indeed, I used it with laravel

  • @todddelozier8172
    @todddelozier8172 11 місяців тому

    Fireship be spoiling us with content this week 😊

  • @jhoanmiguelescobararboleda8547
    @jhoanmiguelescobararboleda8547 8 місяців тому

    I just tried drizzle, And this is amazing!

  • @redakcjaTheBased
    @redakcjaTheBased 11 місяців тому +1

    I looked for the free tier db to mess around, Neon looks like this

  • @TerenceKearns
    @TerenceKearns 11 місяців тому

    That looks seriously dope

  • @presi3005
    @presi3005 11 місяців тому

    I love these videos, even if I cannot understand a single word this man is saying.

  • @David-oc8yt
    @David-oc8yt 11 місяців тому

    There should be a C++ version of this library 😉
    This has serious potential!

  • @Nexzore
    @Nexzore 11 місяців тому

    There is some haunting sound in the background at 2:26 which sent shivers down my spine :O
    You good Jeff?

  • @samuelwittlinger7790
    @samuelwittlinger7790 11 місяців тому +2

    Drizzle is awesome! It hits the perfect balance between orm and raw sql.

  • @K.Huynh.
    @K.Huynh. 11 місяців тому

    Thank for sharing! I'll try this!

  • @cl4rk_sh
    @cl4rk_sh 11 місяців тому +3

    I'm planning to use Neon for my next project. Seems promising, thanks.

  • @desireco
    @desireco 11 місяців тому +1

    On the other note... Love Neon!

  • @ricksterman
    @ricksterman 11 місяців тому +1

    Can you do Gunicorn in 100 Seconds? This video was great btw! So concise and no bloat.

  • @Bliss467
    @Bliss467 11 місяців тому

    EF also has a version that closely matches sql, but had the presence of mind to fix the order of clauses to put the select last

  • @tenj
    @tenj 11 місяців тому

    I swear today I saw this tool in a random docs and said wtf is that and you just dropped this

  • @dejancavic8649
    @dejancavic8649 11 місяців тому

    I am quite hyped about drizzle and its ease of use. Two days ago I stumbled upon some weird stuff with Prisma ORM for SQL, and TBH It is my first time to use it. But the pitfall I had is that it wasn't exactly an ORM l hoped it to be(used TypeORM till now, but decided to try something new because the development there seems stalled), there is this feeling that you are not actually using SQL and actually learning/using the Prisma API - and if something is rather straightforward, in Prisma it was complex for me. And I know that it was probably a Prisma API knowledge gap, but I don't want to adopt something just because its popular and has XY starts. I want something that is easy to use, with SQL like syntax, with more control when needed, and PERFOMANT.
    Just now, I completed migration from Prisma to Drizzle, took me about couple of hours to rewrite everything, but it was worth it. Shout to everyone to actually use it in a new project.
    And big shout out to drizzle team for making a remarkable work! 🎉

  • @imxd9698
    @imxd9698 11 місяців тому

    very excited that there's yet another option in the sea of options

  • @thesigma8508
    @thesigma8508 11 місяців тому

    Idk shit about coding, yet I still watch your videos

  • @maximofernandez196
    @maximofernandez196 11 місяців тому

    This guy literally explained what an ORM is in 30 seconds way better than any other shitty 1 hour long video about them.

  • @jotim7191
    @jotim7191 11 місяців тому +1

    Just use raw SQL as it was intended to be used from the start. I've seen so many projects being built with nhibernate, EF Core, etc, etc and all of them gets performance issues and super complex abstractions on top of abstractions as soon as your database gets complex.
    SQL isn't a hard language to learn, I would argue that alot of ORMs are even harder to learn and just slows down your performance.

  • @MrRoflarious
    @MrRoflarious 11 місяців тому +1

    Ecto (Elixir): "Look What They Need To Mimic A Fraction Of Our Power"

  • @IngwiePhoenix_nb
    @IngwiePhoenix_nb 11 місяців тому

    Awesome tool, thanks for the recommendation!

  • @Voidstroyer
    @Voidstroyer 11 місяців тому

    Just goes to show that TypeORM was right all along. It does everything that was shown here about Drizzle including generating migrations from schema definitions. TypeORM also gives you options on how you want to write queries. If you use entities (schema definition for a table) you can use functions like find(), findOne(), findOneByOrFail(), etc. You can use the query builder to write stuff like select().from(User, 'user').where(xxx).andWhere(xxx).groupBy().orderBy().getMany(). Or if you really want to you can use the query() function which lets you write raw SQL.

  • @fingerstyledojo
    @fingerstyledojo 11 місяців тому

    oh my god this is exactly what i needed

  • @andrewmanninen1244
    @andrewmanninen1244 11 місяців тому

    This is literally what I've been doing manually for Perl for years

  • @PanzrKunst
    @PanzrKunst 11 місяців тому

    Chose Drizzle for my latest project - it's brilliant.

  • @elliot_yoyo
    @elliot_yoyo 11 місяців тому +3

    Should be noted that the migration and studio are not open source. They both might be a service in the long run...

  • @NicolasSilvaVasault
    @NicolasSilvaVasault 11 місяців тому +1

    wow that was easy, i think i'm gonna give it a try

  • @nro337
    @nro337 11 місяців тому

    Loving Drizzle, really nice Prisma alt

  • @RishabhBohra13
    @RishabhBohra13 11 місяців тому +17

    finally a 100 sec video in 156 seconds

  • @comforth3898
    @comforth3898 11 місяців тому

    Bro, you are now a superhero. A video per day?

  • @Muzzino
    @Muzzino 11 місяців тому

    Reminds me of ReQL, this is fantastic

  • @syntaxerror831
    @syntaxerror831 11 місяців тому +1

    I'd love to see a video about Odoo

  • @jakescott1234
    @jakescott1234 11 місяців тому

    R in 100 seconds! R’s dplyr package is the OG Drizzle-style ORM

  • @daphenomenalz4100
    @daphenomenalz4100 11 місяців тому

    Remember relations do not create relationship on db level, tho they have another way to do that.
    One thing i found was that while working with microservices, you cannot append schemas to the same database using different services, one will override the other. But ig that's not an issue lol, cuz that just encourages you to use different db for different services.

    • @emreatl5093
      @emreatl5093 11 місяців тому

      I think you can do with schema's in postgresql, no? Whether thats a good way is different question.

  • @graypsi
    @graypsi 11 місяців тому

    existence of this framework it's like natural selection, but with extra steps

  • @SantoLucasST
    @SantoLucasST 11 місяців тому +1

    The bast part is the "Developers love Drizzle ORM!" section in their website where some people are shitting on it in the comments.

  • @cutzudev
    @cutzudev 11 місяців тому

    was waiting for this, i was too lazy to learn drizzle on my own

  • @WeeklyMeat
    @WeeklyMeat 11 місяців тому

    so, it's just a querry builder with the overhead of having to write extra schemas?
    How great. Can't wait to use it

  • @gogira
    @gogira 11 місяців тому

    javascript based frontend and backend is evolving, compilers are created, package managers, dependency injection, and now ORM.... looks like it's getting where backend languages were 20 years ago

  • @siempay
    @siempay 11 місяців тому

    I laughed so hard on the life threatening part and I don’t know why

  • @ivandariogye
    @ivandariogye 11 місяців тому

    Oh God, what great editing, I lol'ed when he showed the candle under the shower.

  • @re.liable
    @re.liable 11 місяців тому +2

    Drizzle (+ Zod) has been a pleasurable experience. I've encountered a few edge cases with the types though when the database gets modified directly outside of Drizzle.

    • @huuhhhhhhh
      @huuhhhhhhh 11 місяців тому +1

      Would changing the types outside directly have a knock on for any ORM/non-ORM?
      Even in VanillaJS, you'd likely still have to deal with the underlying types changing

    • @re.liable
      @re.liable 11 місяців тому

      @@huuhhhhhhh That's true

  • @soundstudio7803
    @soundstudio7803 11 місяців тому

    When you realize Fireship's 100 seconds videos are way longer than 100 seconds

  • @jmac732
    @jmac732 11 місяців тому

    first ever readable database framework

  • @Rundik
    @Rundik 11 місяців тому +2

    Looks more like a query builder