DEV Community

Henry Williams
Henry Williams

Posted on

What framework do you use and why?

I usually use Express.js or Restify.js for simplicity. But I'm wondering if it's better to use a more full-featured framework like Kraken.js or Sails.js, especially for larger projects.

I know it varies by use-case, but I'm curious to know why I don't see as many people in the node.js community embracing such full-featured frameworks; most devs that I've come across always recommend Express or Restify.

Top comments (5)

Collapse
 
buphmin profile image
buphmin

I think people want to keep node very fast and closer to microservice oriented projects. The less code and abstraction, the faster it will run.

The larger your project the more structure you will likely want to help keep things consistent. Since node projects are typically (from what I have seen) on the smaller side it makes sense to use something like express since it is simple.

I have used Adonis and express and they both are nice for various things. Even with a full featured framework like Adonis, nodejs is still going to be very fast in req/response scenarios. And lets be honest if you are truly needing max performance you would probably move towards Go or even more bare metal like C/C++.

Collapse
 
henryjw profile image
Henry Williams

That's a good point. I hardly see any huge monoliths built with Node.js. Might be because there are so many other options that a lot of people working on such large projects opt for another platform like .NET altogether.

Unfortunately, I'm one of the unlucky few that decided to build a huge monolith (was small at some point) in Node.js and Express. Managing it is becoming a bit of a pain.

I guess the best thing to do is probably to break it up to simplify it, eh?

Collapse
 
buphmin profile image
buphmin

Yeah, simplify, break things up and standardize. Then document it.

Thread Thread
 
henryjw profile image
Henry Williams

Makes sense. Thanks for the advice!

Collapse
 
strahinjalak profile image
Strahinja Laktovic

It's very nice and fast to setup microservices in express. Though with Typescript and packages like 'typedi' it easily go beyond the simplest REST API service, which is great and all up to you. I tried NestJS as well and i think it's great for more complex applications, even though the framework is still young.