Why aren't you using Fastify? Or Koa? Or NestJS?
HTML-код
- Опубликовано: 28 сен 2024
- Express.js dominates the Node.js framework landscape. It seems as if almost every Node.js developer is using it.
But why is that the case?
All Podcast episodes: maximilian-sch...
Want to become a web developer or expand your web development knowledge?
I have multiple bestselling online courses on React, Angular, NodeJS, Docker & much more!
👉 academind.com/...
I am using NestJS. Express is simple. But, you have to build an architecture around it when building more sophisticated applications. Whereas NestJS just takes care of everything out of the box.
NestJS is fantastic!
Yes, Nest Js follow SOLID principle.
Long time React&Express user, Nest made me forget about express in minutes literally. I even got the occasion to use Angular after all the negative content I heard about but man Angular and Nest is a match made in heaven, so productive to work with those two. If you read this and you want to build enterprise grade apps, learn Next you won't go back to express.
I like Nest a lot. Its very similar to Spring Boot (Java), so if you have experience using that, its a no brainer.
same thought here. well said.
I’m sad that Adonis didn’t quite take off yet. It is a great framework
The community is active and it is always improving. Adonis is great.
@@megatechbody3207 Many more tutorials on RUclips about AdonisJS are needed; as of today, there is barely any content.
We use NestJS at work. Having a framework that supports DI was important to us for testing and switching dependencies based on certain requirements. NestJS uses Express underneath the hood (with an option to plugin Fastify as well). What people don't realise is that it is really hard to build a large backend with express because of it's un opiniated nature.
We also use Quarkus for certain projects that use Kafka very heavily.
But I use express.js for both small, mid-sized and large backends and never face issues that most people describe. I actually use rabbitmq often and kafka less aften. I never face issues most people who don't use it for large scale back-ends describe.
@@abeinevincent5585 Suuure you don't. Have your code reviewed by someone more experienced.
@@nou4605 I actually do use it on a daily. I think the difference comes on experience, just like any other technology, after using it over and over, you get a way of handling everything and including its drawbacks thats why I never have an issue anymore, I use it with typescript often for both small, midsized and large backends,
@@abeinevincent5585 Good engineers can build using pretty much any tool.
@@abeinevincent5585 do you have some public repo for large project using expressjs? Thanks
The same reason that in enterprise projects people use Spring Boot and not e.g. Micronaut / Helidon etc. It's the most developed one, the most battle tested one, has the most documentation etc.
As for the reason this dev doesn't use express (or any Node backend for that matter), lies in the previous personal experience and the state of current workplace, a mostly Java oriented shop where backend is concerned, therefore a Spring Boot place (couldn't even persuade higher ups for the value of Quarkus, an arguably far better and streamlined experience, or even standardized JEE - Jakarta).
This video was about Nodejs frameworks and not Java 😊
@@ademineshatdid you even understand what he's saying?
@ademineshat wow... completely missed the point there, didn't ya?
What's the value of Quarkus compared to Spring Boot? On an unrelated note, I was considering giving Micronaut a try to compare memory usage, most Java microservices seem to be using a lot more than they should for basic REST APIs
Thumbs up for quarkus
Im using ElysiaJS and im in love with it.
i wanted to use it too but i am not sure about is features and plugins , i mean it keeps grow but for example i searched how to integrate elastic search or redis and i didnt find nothing, what do u think about it? Elysiajs is good for small projects maybe ?
@@flavioscimeca4343 I discover elysiajs more robust and for fast development, me already use elysia with redis and elastich, minio, webrtc and others, everything works :)
@@flavioscimeca4343 maybe you want to try honojs? but im using elysia for big project and its fine, integrate with redis, minio, webrtc and any other tech, I believe elastic will works too.
@@flavioscimeca4343personally i don't like it. I switched from elysia to nest js. Elysia is unnecessarily complex and definitely not good for enterprise.
It's just because most teacher teaches using express js. And this is all students who downloaded it. If the student switch they choose different path and hence other framework has less download
same reason people use React even if it's not the best framework technically
It was but now its mess thanks to hooks and vercel 😂
Which is the best then?
@@octane-nn1rk Fiddle with the top 5 most downloaded in that category and pick the one that resonates best with your style. That's the best way I think one can get "the best"
@@programmerjowo agreed, vercel ruined react.
@@octane-nn1rk theres nothing called best, if you're a hobbyist you'd like solid or svelte but if you're looking for a job you're better off with react. And in terms of development/coding, svelte feels faster but svelte lacks a huge ecosystem like react, a good ecosystem means a lot of tools already available and doesn't need you to code it manually. I chose react as a beginner because I wanted to launch an app and a dev mate suggested me react because he knew i was a total beginner and that react has the most tutorials, articles, packages, you name it... available on the internet that I could learn from as i build. So as a starting point, pure react with vite (not nextjs) would be the best starting point because of a lot of tuts, tooling, jobs, etc. After that svelte and other frameworks will almost always feel the same. I learnt svelte in 1 month, vue in 1 and half a month, just by reading a couple of documentation. Also, nextjs is just a combination of react and express, and you basically know half of nextjs if you know react and other half of nextjs if you know express.
Hono JS is also another NodeJS framework that I see has potentials. I did not find you mentioned it. What is your take on hono.js and May be a course on it. Just may be...😊
Glad to see a comment on it haha.
doesn't it use deno instead of nodejs?
@@mujibulhaquetanim, It uses node, deno and bun.
@@mujibulhaquetanim works on most (is not all) JS run times. Syntax, extremely similar to express but fully featured and reduced code needed. For example, hono doesn't need controllers. The business logic and routing should be in the same place per hono docs
@@everythingisfine9988 Thank you for the information; I will certainly experiment with Hono.
I may like Fastify if I used it because I saw its tutorials looking awesome. But my project was using Express, so I had to stick with Express, which is simple and good.
im glad that you made this video because if i had to make a nodejs server supre quickly i probably would use one of the other options like koa or fastify. I hadent heard of adonis but ill check that out. The reason I dont use any of these at the moment is because im using Axum with Rust and it's a phenomenal experience.
Edit: Adonisjs looks great!
I use Koa and I love its simplicity and minimalism. Also its cascading middleware system is an obvious win over Express.
Express is used as the router inside NestJs, so, even though ExpressJs has many downloads, NestJs contributes to that number
I use Express with React SSR for my personal blog. It's a bit of a weird setup. It probably has room for improvement. But it's serving me well for now.
I use Node.js because I have many years of experience working with the JavaScript ecosystem, and it's where I'm most comfortable. PHP would probably make more sense for my specific use case (rendering Markdown files from the server's file system, in a traditional LAMP stack hosting environment), but I wanted to get something put together quickly, so I went with what I know.
I use Express because when I learned Node.js back in 2015, Express was the "in" framework at the time. Better frameworks exist, but for this, Express is fine.
I use React because I have a lot of experience with it, and because it's pretty good for building UI components. I use SSR because I want my site to work without JavaScript on the client. Call me old fashioned, but it's a very simple website, and I think it should be usable without JavaScript.
OMG this is my comment
Probably 8 years ago I first took youre course about Angular, because I wanted to start my career as a Web UI developer.
Now I am full-stack developer (NodeJs + Angular) with 6 years experience.
Thank you for your job!
I use NestJs as Node framework, because if you work with Angular you already now the concept.
Besides this NestJs provides an architecture layer (Layered Architecture) that makes development easy and provides maintainability. Further more you are allowed to use features of Express or Fastify, the framework itself exposes its API that is pretty cool.
So, for me to use NestJs + Angular is preaty cool!
Some of the frameworks are using express under the hood (eg NestJS). So this is adding up I guess.
Personally I don't use any frameworks (I am PHP dev) but if I could, I would probably try NestJS as it seems to have good microservice solution, which is what I am currently working on.
I used Nest.js for one of my backend APIs, and I wish I could go back and have the time to refactor everything into plain Express. For me Nest.js is just a thing objected oriented wrapper around Express that makes your backend look a lot like an Angular service layer. Which of course is what attracted me to it initially. 😊 But after running it for a while, the cost / benefit for me is not really there, there is really no tangible benefit to it other than it's a different programming model. So I just can't recommend it compared to plain Express. 👍
You are right, why we add layer to express Js if we want to use simple framework. If we need enterprise framework just use spring boot
Fastify all day long... You can do amazing things and its fast as hell. Express is also good, more like tradition. In my company, we have the entire OS built on top of express and GraphQL that serves IIoT in Mercedes, BMW, Porche, Audi, etc. We have more than 50 microservices. There is no need for Nest and stupid abstractions if you know what are you doing. We did it very simple and its organized on another level that you cant even imagine. No fucking single bug and problem.
Nest is the best thing that can happen for node , with di and everything, it is the best choice for building big server side applications.
Somewhat disagree in terms of maintainability. What are the pros of using NestJS over ExpressJS?
Do you actually know that nestjs uses express under the hood? It's just more structured@@taylorlindoresreeves
what is your suggestion ? i use express but i have decided to go to the nest js. is it right a decision to make in order to become fullstack team lead in future
?
I am using what my customer asks me to use, and it is mostly Express: most of them are comfortable with it and don't want to go out of that comfort zone.
When I have carte blanche on the tech-stack, I go for Fastify for precisely the reason you mentioned: Express not being maintained for ages and twice faster.
Now, I am starting a new project for a new customer and I have to go the Nest/Express way.
Once I master Nest, on the next project on which I have carte blanche, I will probably go for Nest/Fastify.
It worth mentioning that NestJS uses Express (By default) or Fastify internally
I use Nest because it resembles Java Spring to some extent
Max you will add fastify course or as a module to some existing course? If not also please let me know
I'am using NestJS, too. But actually nestjs is still express.js, and if you wan to use express still functions, middlewares you can. I think NestJS is Express + Typescript with some stable and good features.
Lastly, I dont know Angular, i am activelly using react with typescript. And i am big fan of nestjs.
for me at this point of my early career, ive been using nest for work,
and planning to use elysia and adonisjs for side projects
adonis is basically one guy taking care of everything. He discontinued v4 before 5 was available and no LTS was warranted. I would avoid it like the plague.
@@JoseHenrique-xg1lp Its not one guy, he has a team now that is sponsored. You are spreading misformation. It starteed with one guy like everything else :)
React Native ? Flutter which one to go for Mobile Developer
React Native
Flutter is a bit faster but got confusing code nesting, Go with React Native with Expo
Flutter is hard to read
@@programmerjowo yep
If your background was related anyhow to React - then def RN. But if they both are new to u, do Flutter then. Flutter is younger but with huge potential, easier to bake first app, more strict. Where React and RN - more liberal, you can have more tools
NestJS is an amazing framework. We use it on our production for years now, it’s a fully mature framework that simply works.
I discovered NestJS a year after learning and using Node.js with Express. Over time, I started to dislike how unopinionated Express was, especially when it comes to project folder structure . NestJS helped me with this, offering a more structured approach and has excellent documentation.
I like NestJS as it's straight-forward and if you have a team you have rules that you must follow. We did some projects on ExpressJS but depends on project, experience and size of team.
I love NestJS I have used it for just 2 projects but I love it.
Nitro unjs is my go to. for many years
The simplicity of express allows me to easily separate business logic from the framework. While battery-included frameworks are convenient, they sometimes force the logic to "marry" them, which I'm personally not a fan of. But still, it depends on what kind of project we're building
Adonis is a great framework, really. There is no any good framework that could be better than any frameworks like from Java or PHP. It seems like backend NodeJS development still doenst reach the needs of good DB REST app
I have used nestjs a lot, after started to angular on frontend opposite to react. It has a good architecture and scalability
I look forward to the day you open the NestJS course in Udemy. I still haven't found a great instructor like you❤
My personal reason to use nest js is that sweet auto open api doc generator. It just so easy with nest js.
express was the first nodejs i learned while learning nodejs, also it gets the job done hence didn't bother learning other libraries as it becomes overwelming. Also given that express seems to be the standard with nextjs as well.
Im using Go.
I love next js, but the thing i like about express is it doesn't change every 5 mins like next js
NestJS is we are using at work. Fastify Express being un opinionated are fine to being with for some short project but for decent enterprise level requirements where multiple people are working having a framework really required.
Nestjs use express under the hood, you can also switch to fastify later if you want. Nestjs is very good when you need order, and it's customizable when you know how to use it properly.
Nestjs is anything but order. Anything written with it is a complete mess.
@@Patrk38 Why you say that?
@@lukas.santiago because that’s the truth.
@@Patrk38 lmao ok
Adonisjs looks awesome 😍, thanks for the mentioning it
NestJS is based on Express so you are using it even there 😄
I would suggest anyone to first use Express and then Nest so you would understand why Nest is so good.
I am wondering why you did not mention NextJS as it is also a framework with fullstack capabilities and thus it can also be used for backend development.
Yes indeed nextjs can be both but mostly it used for FE development, also as far as i know there are disadvantage when we are using next js for BE
usually, I use Express Js js but prefer NestJS for large projects 🙂.
I don't like Nest.js, probably cause of it's decorators or dependency injections ( love angular though ). I like fastify with typescript, also hono. I use express cause my senior make that decision for me
Hello Max , i want to suggest that you read comments section for your Node/Express course on Udemy , there are people complaining and saying that the course is really old and needs to be updated , i wonder why you don’t update it as you usually do for react course for example or release another new course with your new amazing learning skills
Thank you Max ❤
0:14 i will use , Spring Boot Or ExpressJs
What do you think about nestjs ?
Hey Maximilian , you said you delete ngRx old videos and update it to latest one i means is it required , can did you deleted already or will delete if you are going to delete old videos , so do after a month Please, Or if you done already then i want to know is it completly changed or little bit
Yeap, Am an angular lover and nestjs is awsm!
The company I work for uses Koa, the error handling is great, much more convenient than express
There's no reason whatsoever to use express in a new project.
I use expressJs and if i want to build something more robust and scalable i use Golang + gorilla mux or echo
Do you have a php course and one of laravel?
Express is simple and good enough for most people. If I need something faster or "better", I might look outside the JS/TS landscape.
I m using loopback 4 in my company’s project
Please make a fastify course, max!
i will prefer angular over react , , i like framework structured way ,
yes i tried building spa app using js html only !! during my initial days of IT !! and it gives me many ideas etc.
if it works in production, dont touch it. havent seen an ask or requirement that wont wrk with express, so why not, just keep running engine until it crashes
hono 🤝🏽 bun
Why? Because of your course and made me a fan of express
Most of the download no of express js is from tutorials or who are learning backend development in node js
Cant we use Express with NestJS?
Nestjs is already using express under the hood
@@rhymerubayet5758 thats what i said :D
I like hono because it runs basically everywhere
Fun topic. Don't really agree on express being dominant because it was early to market or has loads of docs or modules or is popular. Otherwise we'd still be using Netscape, Flash, etc. It's dominant because, despite its flaws, it satisfies 99% of people's needs. If the need shifts and Express doesn't it will also end up on the scrap heap. Personally, I've got better things to do than spend more dev time on Express alternatives. If I run into one of its flaws and switching becomes the only option, only then will I consider it. The same reason why, for personal work, I moved off React.
So... basically you use it because it was first and still gets the job done? So...yes, you use it because it was early to market.
What backend and database should you use for a tinder like mobile application with react native?
The download number is so high because of legacy/old systems. Also because e.g. nestjs has express as its dependency.
Migrating to something more convenient like nestjs is sometimes not a choice a company can make because it
s expensive and does not bring any value (in the eyes of the prodduct owner)
Express is dead. Every new project I see is build on top of nest.
I like to use something like Nitro or Hono.
We are using NestJS and it's pretty sweet. The documentation is good and there is a logical approach to most common use cases. I have used Express in the past but it feels like you have a lot more work to do to get up and running and I would not like to be maintaining a large Express app
I am not using javascript in the backend because it simply isn't as fast or robust as using swift/vapor or c#/asp.netcore which are my preferred frameworks for the backend. I have been blessed to not have a backend framework written in Node.js/javascript thrust on me much in the last 6 years or so.
not agree with you max right now you must move from express and use framework like nestjs because it help so much to developed clean projects also if you see benchmarks express is one of the slowest frameworks out there nestjs use express behind but at least you have much more cleaner project and you also can change it to fastify
I would prefer Fastify or Hono as an alternative for simple frameworks...
Maxim please add fastify to your node course.
Similar thing with React. Why are people still using React when there are a lot better alternatives like Svelte?
BTW, I'm sad that Max abandoned his Svelte course.
Laravel no question. I love NextJS with Laravel. Reason why is I get to use all the incredible tools in the ecosystem. If there is a huge budget then NextJs stack like T3. But for ultrafast prototyping Laravel plus NextJS.
Hey I know reactjs, I haven't worked on nextjs. Can you please tell me for backend what will be used in nextjs? Is it nodejs, expressjs or anything else?
@@razak-attar yeah im wondering too...
Express is easy to get started with. Nestjs is just way too confusing.
But I use neither, I use loopback 💀
It takes not more than week to be relatively proficient with Nestjs. And once you learn it there is almost no going back. Anyone coming from Java would love it.
But nestjs uses express under the hood
Does not have to - it can use Fastify and if you run it with bun, you can get brutal performance boost.
express routing library change my mind
Nest.js is a god damn blesssing.
Check out my NestJS tutorial video in my channel-perfect for anyone just starting with backend development!
bun and hono
for me Deno + Hono
Hono + bun + pgtyped ... Simply fast n powerful (if u use postsgres)
Nestjs is great
People are sleeping on Nitro and unjs... Used to build Analog and Nuxt.
Isn't Laravel slow in production?
It was never intended to be fast, it's for dev exp
laravel blade is slow. better use it on api
It's fast enough for the amount of traffic most websites have to deal with
Nest.js adopted worst Angular feature modules. Its actually shit dynamic module, forsync ,blahh blaahhh. I hate that shit. I have worked with spring and nest believe me anotations approach is worst way to code. Yes it reduce code but if something goes south your fucked it adds too much abstraction. For my personal stuff i tend to go with Go or kator.
It is easy to set up and it's flexibility.
Still stunned there is no Django/Rails/Laravel equivalent in the JS world (and no, nest.js is not one of them).
Nestjs on top!
Nest.JS is great.
Adonis looks really cool
or HONO JS (most important)
Bro looks like he's getting attacked by a swarm of flies
Simplicity
So AdonisJS is dismissed because of fewer than downloads? 🤦🏾♂️
Downloads is a valid metric, since that usually correlates with usage. Why would you consider/recommend an unpopular framework built by one person unless it's for a side project you don't care about?
Nitro from unJS
Seriously I am stumped how Adonis is not on top of everyone’s lists. Crazy.
I use Next.js a lot, but sometimes I pop in a simple express app to do something collateral to the next app and don't need a TON of stuff to make it work.
Hono is the best.
Express is just so simple