What is the MEAN Stack?

MEAN Stack Development 101

What is the MEAN stack? We take a closer look at how MEAN Stack works, discover its origin, advantages, and limitations for web app development.

Author: Don Jones


Part one of a four part series on the MEAN Stack.

Even if you’ve heard of MEAN stack only in passing, chances are you’ve heard about at least some of the hype. The tech stack is popular among developers and business owners alike to rapidly develop and deploy dynamic web applications. The tech stack was relatively unknown just ten years ago. For a closer look at how MEAN Stack works, let’s go beyond the fanfare and trendiness to discover its origin, advantages, and limitations for web app development.

The Lean on MEAN Stack

So, what is MEAN stack anyway? This JavaScript-based framework is used to develop cloud-hosted web applications. Its name is actually an acronym, short for the four technologies that make up the stack. Let’s take a look MEAN layer by layer:

M: First, we have MongoDB, a NoSQL document database. MongoDB stores data in JSON-esque documents, which adds flexibility and accessibility as data can be easily passed from the client to the server.

E: Next up is Express (.js). This is a flexible Node.js framework for building web applications. It can be used to build single and multi-page as well as hybrid web applications.

A: Built for dynamic web applications, Angular is a structural JavaScript framework. Angular is often relied upon to create web applications quickly and efficiently.

N: Node(.js) rounds out the MEAN stack. As a JavaScript web server, Node(.js) is used for building network applications. It was inspired by Ruby’s Event Machine and Python’s Twisted.

MEAN stack development has grown in popularity in recent years because developers can leverage the same language for both front-end and backend development. Its origins date back to a LinkedIn Group, but the concept really took off in 2013. Valeri Karpov coined the term and sung its praises in an article published on Medium.

You may also see other examples of the MEAN stack like MEVN, where Angular.js is replaced by Vue.js, a front-end JavaScript framework. There is also MERN, which swaps out Angular.js with React.js. React.js is a front-end JavaScript library.

What Does a MEAN Stack Developer Do?

With MEAN development, developers can build dynamic web applications and websites through free, open-source technologies.

MEAN stack developers use the four technologies that make up a MEAN stack to develop web applications. This role isn’t all that different from a full-stack developer, meaning they also work on front and backend systems.

Other common responsibilities and expectations include:

  • Experience working with each layer of the MEAN stack: MongoDB, Express, - - - - Angular, and Node.js.
  • Comfort working with jQuery, PHP, and Symfony
  • Testing web applications
  • Deploying web applications
  • Creating modules
  • Designing databases
  • Integrating APIs

The Benefits of MEAN Stack Architecture

What’s caused MEAN Stack to go from a LinkedIn group favorite to the top choice for web application development across the globe? This tech stack doesn’t just have a couple of pros. It has several advantages that have fueled its success:

Open Source

Each layer of the MEAN stack is made up of free, open-source technologies. As a result, developers can make use of publicly accessible libraries and repositories during the development process. One of the benefits of open source technology is that the stack is updated regularly. Developers can also tap into developing communities to ask questions, get ideas, and find solutions to issues they may come across.

Easily Swap Between Client and Server

The MEAN Stack is written in one single programming language: JavaScript. Because the web applications are only built in one language, developers can easily switch between the client and server. There’s no need to use a stand-alone server; instead, they can easily deploy web applications on a server.

Flexibility

One of the greatest advantages of MEAN development is its flexibility. The use of a single programming language (JavaScript) and MongoDB make the stack particularly adaptable. The universal code will run on both the client and the server. That offers developers greater flexibility if they decide to change frameworks during development. You can also host the project to the cloud through MongoDB.

Additionally, developers can easily add new features and modules during or after development. You can create prototypes, customize to meet requirements, and build scalable web applications without a lot of headaches.

Cost-Friendly

We’ve mentioned that MEAN is free, which is a definite advantage to businesses. Developers only need to know a single programming language to build effectively with the tech stack. Organizations that choose to build with the MEAN Stack can also focus largely on hiring JavaScript experts.

Time-Saver

MEAN is especially useful for tight schedules. Developers don’t need to create modules from scratch. Instead, they can lean on the directory of module libraries within Node.js. Plus, you won’t have to hunt down errors. You’ll be automatically notified if a feature is broken, giving you more time to fix it and move on to the next step in your project.

Another time-saving feature? MongoDB, AngularJS, and Node JS all use JSON to store data, so there’s no need to reformat data. Need to make changes in real-time? You’re in luck. Traditional web applications require you to hit refresh every time you want to see the results of a server request. MEAN uses single-page applications, so you don’t have to constantly refresh web pages for each server request.

The Cons

As with any tech stack, there are some limitations to MEAN. First, you must be comfortable with JavaScript to make it work. A cursory review of the programming language isn’t enough, so plan to brush up on your expertise or bring in a specialist if you want to use the MEAN stack.

If you’re working in a heavy load scenario, there’s a chance you could lose records written by MongoDB. The database is generally consistent, but it’s definitely a possibility worth being aware of.

Don’t forget to consider data security. MEAN stack is still relatively young as tech stacks go, which makes it more attractive to potential hackers. Also, because it’s still a new tech stack, you won’t find quite as many resources as you would with Ruby, Python, or PHP.

Want to take the next step to becoming a MEAN stack developer? Brush up on these JavaScript best practices in this engaging, hands-on course.

Sources:



Related tags:

programming   MEAN Stack   MongoDB   ExpressJS   Angular   Node  
About the author

Don Jones has been in the IT industry since the mid-1990s, and is the author of more than five dozen technology books. He’s been everything from a network engineer to a web developer, and is currently VP for Developer Skills at Pluralsight.

10-day free trial

Sign Up Now