Should I still be building backend API's with Node/Express?

With Deno rolling around and with other options out there, will support for 3rd party npm packages still hold strong?

I am thinking about developing a large app using Node and Express for my backend. Of course I will be downloading a lot of npm packages.

I fear that a lot of these packages will become depreciated after a while. Should I be concerned?

If your concern is that NodeJS is about to become obsolete, don’t worry about that. It will eventually fall out of favor, but that’s just the nature of the type of work we do.

@ArielLeslie

Is it worth starting new, big projects with it?

And what about maintenance over time?

NodeJS isn’t going anywhere any time soon. Project maintenance is something that you just have to deal with. The more external dependencies you bring in, the harder that is.

There are several considerations that go into choosing your technology stack, but NodeJS going end-of-support isn’t one that you need to worry about.

2 Likes

I quote something I read out there

When node came out in 2008 (if I recall correctly), some guys were saying this is the end of PHP.

Well 12 years later, PHP is still there.

hi @Hjb1694 , if you are going to develop application then Node JS would be best to work, if you have any doubt you can ping me anytime
Troy

Deno has only been on v1 for a few months, it has no major 3rd party packages and is incredibly immature (it doesn’t even have a functional REPL at this point). If you are prepared to build literally everything yourself, then it is completely usable, but that’s not really feasible.

You can swap “Node” and “Express” in your question and follow up-question for literally any major language runtime & major web framework:

I am thinking about developing a large app using Java and Spring for my backend. Of course I will be downloading a lot of packages using Maven.
I am thinking about developing a large app using .Net for my backend. Of course I will be downloading a lot of packages from Nuget.
I am thinking about developing a large app using Ruby on Rails for my backend. Of course I will be downloading a lot of gems from RubyGems.
I am thinking about developing a large app using Python and Django for my backend. Of course I will be downloading a lot of packages from Pip.
I am thinking about developing a large app using PHP and Laravel. Of course I will be downloading a lot of packages from Composer.
…etc

If you need to build something, probably build it in an extremely popular language with a huge ecosystem and community: the alternative is languages that do not have wide support structures for you to make use of, and generally unless you are extremely skilled in the use of one of those languages you’re going to hit huge unsolvable issues. Long-term maintainance is a fine idea, but for , say, Node, you’re likely looking at years and years it fades (and this in no way means your app will suddenly stop running at that point)

1 Like