Follow

:javascript: :node:

What should I use instead of and for a web application in Node.js in 2023? Can someone summarise pros and cons of the most popular alternatives? I see way too many…

Alternatives to :

Koa, which can either replace or complement both Express and Connect.

Fastify, which looks straightforward and very similar to Express. Plugin for templating (supporting Handlebars, Mustache, Pug and EJS): @fastify/view.

NestJS, which seems too convoluted and probably redundant since it works on top of either Express or Fastify (?).

Meteor: more of a platform. No tutorial for vanilla JS (only for React, Vue, etc), and not oriented towards SSR.

I’ll probably go for or .

:javascript: :node: .js

Show thread

Alternatives to :

Mustache: zero dependencies, and dead simple. Too simple? Being logic-less means that conditionals and loops are pre-cooked, and that may limit options.

Pug: main advantage and main drawback: its concise but idiosyncratic syntax, similar to that of — which I know and have used in the past, but is too much of a departure from .

EJS: similar to Handlebars, simple but apparently versatile. Documentation isn’t great.

:javascript: :node: .js

Show thread

The plugin ecosystem for templating engines in Express is (still) larger than in Koa.

In particular, for , there seem to be just 3 in , and all quite outdated (last updated in 2016, 2017 and 2017).

Show thread

@tripu I don't know which project you have in mind, but I would very much would like to do something with Django and htmx (htmx.org/) or unpoly (unpoly.com/).

@tripu Maybe start off with simplicity (Mustache) and see how it goes? It may turn out to be all you need. If not, and you decide to switch down the line, you can just get AI to convert any existing files.

@tripu polka + yeahjs.

both smaller/faster than express/ejs with similar APIs, and 0 dependencies. eta is a little more powerful than yeahjs, but you probably won't need the extra features

github.com/lukeed/polka
github.com/mourner/yeahjs
github.com/eta-dev/eta

@tripu I lied, polka has two dependencies, but they are 0 deps themselves, tiny, and by the same author

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.