What's JAM stack?

January 06, 2020

If you’re a web developer who has been here for a while, you must have heard or used some of these technology stacks to develop your websites or web apps. From the time of installing a xampp server on a computer to now not having a server at all, tech times have drastically changed.

And now its time to welcome the newest, baddest (and probably the lightest) tech stack, JAM stack.
(This website is also made using JAM stack)

  • You might remember LAMP stack (Linux, Apache, MySQL, PHP/Perl/Python), virtually synonymous with creating sites in PHP.
  • And also MEAN stack (MongoDB, ExpressJS, AngularJS, NodeJS), welcoming the advent of everything javascript.
  • And equally famous, MERN stack (MongoDB, ExpressJS, ReactJS, NodeJS).

And now comes JAM stack (Javascript, APIs, Markup). Newest, lightest and probably fastest.

Javascript here states that all the functionality(more like front end functionality) is written in javascript. Any framework, as long as its JS framework.

APIs states that all the server-side operations are handled through APIs. You can have a custom backend also, and it’ll be accessed only through APIs. The backend is abstracted from the rest of the app through APIs. An increasingly famous trend is having your backend with Wordpress and using it with JAM stack using Wordpress APIs.

Markup here is a little game-changing. It states that the web app/site will be served as static HTML files. You have to use a static site generator like Jekyll, Hugo, Gatsby, etc. This ensures that your app/site runs incredibly fast because it’s just serving static website content. Unmatched speed as compared to conventional websites.

Of course, it’s not totally necessary to use any of these stacks. If you’re an experienced enough developer you can create your apps and websites combining any of the technologies available. Following a tech stack just gives you a little edge. If your entire app is built using one programming language, as it is the case if you use MEAN/MERN, managing your app becomes a lot easier.

If you take a look at any of the mature, well-established apps, you’ll know that tech stacks are a completely evolving thing. The most appropriate example might be that of Instagram.

Instagram uses several technologies, all with different programming languages. So as your app grows, so does your app’s requirements and ultimately your tech stack.