![Cover image for Why NestJS Is The New Gold Standard For Node Backend Development](https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F69ene76l14ybn6hq5jyj.png)
As a Node.js developer who has tried every Node framework under the sun, here’s why I believe NestJS must be the new gold standard for Node.js back...
For further actions, you may consider blocking this person and/or reporting abuse
Oooh... Someone's smitten!
Great article. As you said, NestJS can be overwhelming for beginners, like I was and I have never dared to go back (because I got caught in other things). This article makes me want to revisit Nest.
While interesting, I kind of like the freedom I get with Express. I might consider Nest for some projects but for smaller ones I'd prefer to stick with Express, or even Encore if I can.
Apples to oranges comparison. Express is a bare bones library that can define a collection of HTTP responders. Nest is a web framework in the mould of Laravel offering a smorgasbord of sane defaults out of the box with model/controller paradigms and dependency injection that runs on express
My point is that Express alone isn’t enough. It lacks the structure and built-in features that frameworks like NestJS offer, making it harder to scale and maintain
Express is old. Use Hono
When does being old means unusable? Java is old, Python is old, C ++/C is old and still in use today.
Definitely my favorite for building a headless CMS. It took some getting used to since I had never worded with angler before. But it's just typescript so I got it figured out. Been using it for over 2 years now. One of my e-commerce APIs has been running smoothly without resetting for quit a while. Also, I just thought I'd let you know I saw the link to this article in Google news feed. Good job getting it there. 👏
Which of them? Can you list? Have you tried Ditsmod?
I've used all the popular ones in small-to-medium projects like Express, Hono, Elysia, Fastify, and briefly tried others like Oak and Restify, but didn’t dive deep into them. Ditsmod seems similar to NestJS but honestly doesn’t feel mature enough for real projects yet.
Through Google Analytics, I see that you from Tunisia only visited the intro page, which only describes the most generalized features of Ditsmod. And based on this, you concluded that Ditsmod "doesn't feel mature enough for real projects yet"? In my opinion, there is too little analysis for such a conclusion.
Fair enough, I haven't explored Ditsmod fully yet, my judgment was mainly based on the GitHub stars (90). What I meant is that it might need more time before it's trusted for production use. Still, it looks promising and seems to have everything I like about NestJS. I’ll definitely keep it on my radar for future projects.
I tried to use it some time before (i had a test exercise when i was applying to a job). Tbh, I think it's too complicated.
Nest makes you write in it's own paradigm. In the paradigm, which Nest counts as the right one. That's why it is too complicated. You need some time to catch that "Nest" vibe. And I've made that test exercise, but I couldn't catch it. Maybe after some time I would return to it
I've struggled with nestjs for quite long time, I got few projects built on it working fine.
But I agree, it's boilerplate is overwhelming, modules system is complicated and hard to understand.
Considering above, try moost (moostjs), it was inspired by nestjs, but it's got better DX imho. Its decorators and event context system is much straight-forward and it's pretty well documented.
Good article, however, I don’t believe in enterprise-level backend written in js/ts
Why? I've got a project completely on nodejs (ts, nestjs) running for over 5 years serving over 200 partners (over 1k users) and delivering customers leads in volume of 5-10k a month with revenue a little less than $1m a year. Is it enterprise enough?
Regarding nestjs itself, it works fine, but it has an overwhelming boilerplate. There's a lighter alternative that has all the pros of nestjs and gives much cleaner DX. It's called moostjs in case of anyone is interested.
We have over 70 GraphQL subgraphs written in TS and a GraphQL gateway, also written in TS, that rivals traffic of the largest Internet platforms. TS/JS is very capable of enterprise-level solutions.
Owo great article. Awesome overview
Seems like an article that's meant to stir the pot!
Nanny frameworks like laravel, Django, and rails have their value and their place. Personally I prefer that place to be far from my own development efforts though I definitely recommend them under the right circumstances.
And I have to agree with all the OO haters here. A framework implemented like that is going to be full of abstractions that require lots of effort to master.
I guess node land needs Nanny framework 2!
I have used both express and nest but I feel for begineer should go with express.
The other concepts guard can activate which nest using can be easily done in other frameworks also reusability is not a big thing as we import it and reuse if required.nest js could be better for Angular js developers looking at syntax injectors.
nope, not enterprise level.
startup level at best.
enterprise level rarely use js other than frontend.
for enterprise grade you might consider java or go
I used to think just like you. Then in 2016, I switch to node.js after 20 years of Java, and then Nest.
And now we are scaling big with Nest, doing absolutely everything a Java stack would do.
I still like Java, and I wish everyone could go out of the mainstream "my Java is better than your node.js" idea. This is such an outdated debate.
well its not about which is better than which. but in my experience enterprise stuff need a lot of third party lib/service. mostly security, monitoring and reliability. not to mention lots of their client already using java/kotlin. so for the perspective of corporate mgmt using java have a lot of benefits. and almost all the downside of java can be solved by throwing money at it. so yeah. i might be little biased. but thats my experience
I agree with this coming from Scala background.
The fact that Java still needs so much hand holding from large IDEs is such a huge turn off
Python......😆
What? "gold standard"? Are you kidding, right?
Nice effort. But when it comes to choosing between OOP and functional programming many experts choose functional programming than OOPS. I too don't like inheritance complexity in OOP and its workarounds like mixins, class composition and other patch works. For freshers I guess functional programming will be easier to understand because they only need to understand declarative paradigm first and others thing are easy to grasp. Pipe operater reduces assignment operator effort. For freshers I advice to learn Elixir (Phoenix framework) or Gleam (Wisp) or JavaScript (using functional programming rules). Please build some projects based on this for your portfolios, some companies looking for performance based backend apps will surely hire you.
New gold standard? Tell me you’re new here without telling me.
I doubt it. Nestjs is clunky. Gold standard would be using Rust.
Rust is too difficult to learn and slower for development. It can be great for performance, but it significantly impacts development speed
OOP in javascript feels wrong. Why not just use java springboot. Personally I go with Effect, it’s mature, functional, fun: effect.website/
Nest.js is nice, but Adonis.js is better
Battery included framework but you actually never need it.
I'm exploring nextjs now as experience .net C# engineering. This makes me want to try nestjs. I am curious to know how compatible it is with azure functions.
Try adonisjs.com too, I think less decorators, the better is your app
I am using it for 3 years+ and I agree with the article. JS would not be my #1 backend choice, but when it is, NestJS is a very good tool
I've been saying this for years. Nest.js keeps your code so well organized. I'm surprised we haven't adopted this more
Adonis is so much better it's not funny
I'm a Python dev not a JS dev but I am JS curious.
What do you guys think of Deno2?