nodeshift / nodejs-reference-architecture

The Red Hat and IBM Node.js Reference architecture. The teams 'opinion' on what components our customers and internal teams should use when building Node.js applications and guidance for how to be successful in production with those components.
https://nodeshift.dev/nodejs-reference-architecture/
Apache License 2.0
1.66k stars 120 forks source link

Express as a framework? #157

Open Cadienvan opened 9 months ago

Cadienvan commented 9 months ago

Despite the enormous success it had over the years, Express isn't clearly catching up with the demands of today's products and can be considered deprecated or, at least, not maintained anymore. Last commit in master branch has been on March 4, 2023 and the last commit in v5, the "will-be-next" one, is dated Feb 15, 2022.

Modern expressions of Node async power such as Fastify are clearly winning this race and, in my - and many others' - opinion should be suggested instead of Express.

The risk here is to start with technical debt.

mhdawson commented 9 months ago

The reference archicture reflects what components the team has had success with over the yearss verus a prediction of what people might have success with in the future.

We do review periodically but in terms of what the team has had success with there is still no clear new winner.

This was added recently which reflects the acknoweledgement that things might change in the future in terms of where we can report success but that we are not there yet:

There are other frameworks that are gaining on Express and may be a good fit for your deployments. The team has had success with some of them, however, there is still no clear successor to express. For a good overview of some of the other frameworks and considerations for selecting a web framework you can check out this article - introduction-nodejs-reference-architecture-part-6-choosing-web-frameworks

Cadienvan commented 9 months ago

I get your point, yet I suggest a word or two about the current state of the art (only about express, of course) might be worth for Devs approaching this repo.