MEAN Stack : What is it ?

16 Apr 2016


MEAN stack is an upcoming term we listen very much in software development world. We all know very well about LAMP stack. Here comes the next one, in this article, we shall read more about it.

The term MEAN stack actually refers to a collection of JavaScript based technologies those are utilized to develop web applications. MEAN is an acronym for MongoDB, ExpressJS, AngularJS and Node.js. From client to server to database, MEAN is full stack JavaScript.  

Node.js  is a server side Javascript execution environment. This platform is built on Google Chromes V8 JavaScript runtime, to  build highly scalable and concurrent applications rapidly. It is a concurrent JavaScript environment for building scalable and fast web applications. It compiles the JavaScript code to native machine code before the execution, hence it is lightweight and perfect for the real time applications.

Express  is a lightweight framework to build web applications in Node.js.  It provides a number of robust features for building single and multi page web application.

MongoDB   is a No-SQL database system. MongoDB stores data in binary JSON format which makes it easier to pass data between client and server. The reason of choosing Mongo is that, it lets you make the use of just one language for the whole way through.  

AngularJS  is a JavaScript framework from Google. It  features  two-way data binding. Its a complete solution for rapid front end development to develop complex client side applications with modular code and data binding UI. It is used to develop the single page applications with the use of the MVC architecture; and maintained by Google. It makes the testing easier with the dependency injection.

MEAN stack actually Operating System independent though it runs with glaring colors on a Linux Server.

Web Server

In MEAN stack,  Node.js acts as a webserver. Node.js is entirely non-blocking and event-based, allowing for true concurrency among requests. Hence the perfomance is high Node.js is lightweight and relatively new.  So we cannot compare with the commercial militiary level production server performance as in Apache. But Node.js is under heavy active development and so many features are being added to it. 


The Data Storage

The MEAN stack  uses a non-relational database system, MongoDB for the data store purpose. Clearly its a bit change from convention Relational Database systems like MySQL.  MongoDB is a performance-driven model that is extremely scalable and can easily tune with large volumes of structured or unstructured data. 

The Codification

MEAN stack use of Express.js and AngularJS to drive web page presentation and control flow as in PHP/PYTHON does the job in LAMP. Express.js performs as the controller layer, directing application flow and pumping data for AngularJS, which handles data presentation. The primary benefits of these these scripts are a simplified back-end architecture for example, Express.js weighs in at only 1,143 lines of code and a purely client-side presentation layer in AngularJS that can be easily embedded into any existing web application. Another important advantage is that while using Angular JS and Express.js, the developer is still using one same language for all kind of coding functions. There is no need of mixing  HTML+PYTHON+Javascript / HTML+PHP+Javascript as we do in LAMP environment.  So the web application developer need not to run after several languages , but stick with one, that is Javascript for all kind of programming requirements.

Some of those web app based and built on MEAN stack, listed below

TrackIt

ZipLoop

FlowerFly


For website, Mobile app (Android / iPhone) design & development Call 0471-2722111 / (+91) 813-888-4152