DEV Community

Cover image for Why NestJS Is The New Gold Standard For Node Backend Development

Why NestJS Is The New Gold Standard For Node Backend Development

Rayen Mabrouk on January 14, 2025

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...
Collapse
 
deathcrafter profile image
Shaktijeet Sahoo

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.

Collapse
 
ortonomy profile image
🅖🅡🅔🅖🅞🅡🅨 🅞🅡🅣🅞🅝

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

Collapse
 
rayenmabrouk profile image
Rayen Mabrouk

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

Collapse
 
malpaso profile image
Bill Tindal

Express is old. Use Hono

Collapse
 
dev_annuranjan profile image
Annu Ranjan

When does being old means unusable? Java is old, Python is old, C ++/C is old and still in use today.

Collapse
 
dansasser profile image
Daniel T Sasser II • Edited

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. 👏

Collapse
 
kostyatretyak profile image
Костя Третяк • Edited

As a Node.js developer who has tried every Node framework under the sun

Which of them? Can you list? Have you tried Ditsmod?

Collapse
 
rayenmabrouk profile image
Rayen Mabrouk

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.

Collapse
 
kostyatretyak profile image
Костя Третяк

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.

Thread Thread
 
rayenmabrouk profile image
Rayen Mabrouk

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.

Collapse
 
egor_ivanov_44b98713cccac profile image
Egor Ivanov • Edited

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

Collapse
 
mavrik profile image
Artem M • Edited

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.

Collapse
 
tsolan profile image
Eugene

Good article, however, I don’t believe in enterprise-level backend written in js/ts

Collapse
 
mavrik profile image
Artem M

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.

Collapse
 
krd8ssb profile image
Steven Brown

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.

Collapse
 
tanzimhossain2 profile image
Tanzim Hossain

Owo great article. Awesome overview

Collapse
 
rmoskal profile image
Robert Moskal

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!

Collapse
 
deep7777 profile image
Deepak Yadav

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.

Collapse
 
vallerydelexy profile image
vallerydelexy

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

Collapse
 
jrme_pramondon_7e459a4d profile image
Jérôme Pramondon

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.

Collapse
 
vallerydelexy profile image
vallerydelexy

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

Collapse
 
gantamk profile image
gantamk

I agree with this coming from Scala background.

Collapse
 
ozzythegiant profile image
Oziel Perez

The fact that Java still needs so much hand holding from large IDEs is such a huge turn off

Collapse
 
menokoog profile image
Lawrence "Menoko OG" Jefferson II

Python......😆

Collapse
 
dfedotov profile image
Dmitry Fedotov

What? "gold standard"? Are you kidding, right?

Collapse
 
vetrivendhan_b_a885118f74 profile image
Vetrivendhan B • Edited

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.

Collapse
 
ortonomy profile image
🅖🅡🅔🅖🅞🅡🅨 🅞🅡🅣🅞🅝

New gold standard? Tell me you’re new here without telling me.

Collapse
 
inspiraller profile image
steve

I doubt it. Nestjs is clunky. Gold standard would be using Rust.

Collapse
 
rayenmabrouk profile image
Rayen Mabrouk

Rust is too difficult to learn and slower for development. It can be great for performance, but it significantly impacts development speed

Collapse
 
fredericrous profile image
Frederic R.

OOP in javascript feels wrong. Why not just use java springboot. Personally I go with Effect, it’s mature, functional, fun: effect.website/

Collapse
 
pppdns profile image
Denes Papp

Nest.js is nice, but Adonis.js is better

Collapse
 
fridaycandours profile image
Friday candour

Battery included framework but you actually never need it.

Collapse
 
christian_green_7e739c97a profile image
Christian Green

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.

Collapse
 
plleonart profile image
Pascal Lleonart

Try adonisjs.com too, I think less decorators, the better is your app

Collapse
 
palalet profile image
RadekHavelka

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

Collapse
 
ozzythegiant profile image
Oziel Perez

I've been saying this for years. Nest.js keeps your code so well organized. I'm surprised we haven't adopted this more

Collapse
 
malpaso profile image
Bill Tindal

Adonis is so much better it's not funny

Collapse
 
jimmy_mcintyre_f3d0738434 profile image
Jimmy McIntyre

I'm a Python dev not a JS dev but I am JS curious.

What do you guys think of Deno2?