Web developers throw around this word often saying things like “what’s your stack” or I'm a MEAN stack developer” or “my stack is rails and angular.”

A “stack” is a piece of slang that roughly means “the different technologies that I use to make a website”.

Most websites are built using different layers of technologies, and they have similar concerns. For example, every website needs a place to store information. Typically that’s a database like Postgres, MySQL, or MongoDB. That would be one layer within your stack.

Every website needs a way to respond to HTTP requests, that’s called a “server side framework” There are many options there like Express, Rails, Django, .NET MVC.

Also, optionally, a website will use a client side framework, like Angular, Ember or React and Redux to make performant, responsive and very interactive web applications.

Combined, these three options, the client side framework, the server side framework, and the database layer, make up a “stack”.

Since it's basically slang, some developers expand this definition to include more decisions about how to make a web application, for example including the container management system, the static web server, the particular cloud or infrastructure provider.