JavaScript Stacks

Javascript is rightly called the lingua franca of the web. So learning it should be a good thing, right? Yes, because you'll basically be able to build anything on the web. I prefer the use of build rather than create since build immediately alludes to the mental model of stacking up.

Talking of stacking, JS (Javascript) comes in so many flavors generally called frameworks that extend what is called Vanilla Javascript. There's a lot of ranting that goes on about this:

Essentially, the reason behind this is software engineers proposing what should come out of the box from Javascript or customizing frameworks with specifics in mind.

The list is endless: Angular, React, VueJS, Meteor, Polymer, ...

Well that's on the frontend.

Stacks

Frontend won't work on it's own. Node was invented as the server-side Javascript environment. Express on the other hand is described as the web development framework for Node JS. We'll get to the details in due time.

So when you come across PREN, MERN, MEAN, what does it all mean?

EN in each of these stands for Express and Node. Far from a static page, a web application requires a Database and these come in their variations: PostgreSQL and MongoDB are the most common.

It now adds up right?

PREN - PostgreSQL, React, Express, Node

MERN - MongoDB, Express, React, Node

MEAN - MongoDB, Express, Angular, Node

PEAN - PostgreSQL, Express, Angular, Node

Bonus* (from the community, check comments on Hashnode):

CEEN - CouchDB, Ember, Express, Node

And there you have it. When you hear that an application is fully Javascript and they mention one of the above stacks you now understand what lies beneath the 'jargon' - it's no longer jargon to you.

Afterthoughts

VueJS is quickly picking up and it promises ease of grasp lowering the barrier of entry into JS frameworks. However I have not come across reference to it in a stack. So is it safe to say well have VPEN - VueJS, PostgreSQL, Express, Node? Notice that the naming needs to be pronounceable on one breath? Have you come across anything close?

Joe Nyugoh's photo

Awesome list. I found that been good at one makes it easy to learn others. To add to the stack, am using CEEN - CouchDB Ember Express Node to build an offline web app.

Show +1 replies
Joe Nyugoh's photo

Sure you can add it.

Femi Akin's photo

CEO, Flexpert iSystems

PREN is gradually becoming more popular... Even Andela uses it.

Lars Graubner's photo

Never heard of PREN, but the stack is reasonable. Thanks for the list.

Julian Aiup's photo

That's not the problem... Why not PERN? Some men just want to watch the world burn

Ndagi Stanley's photo

Software Engineer | Digerati

You are welcome.