Main article: MongoDB
MongoDB is a NoSQL database program that uses JSON-like BSON (binary JSON) documents with optional schemas.
The role of the database in the MEAN stack is very commonly filled by MongoDB because its use of JSON-like documents for interacting with data as opposed to the row/column model allows it to integrate well with the other (JavaScript-based) components of the stack.8
Main article: Express.js
Express.js (also referred to as Express) is a modular web application framework package for Node.js.9
While Express is capable of acting as an internet-facing web server, even supporting SSL/TLS out of the box, it is often used in conjunction with a reverse proxy such as NGINX or Apache for performance reasons.10
Main articles: Angular (web framework), React (JavaScript library), and Vue.js
Typically data is fetched using Ajax techniques and rendered in the browser on the client-side by a client-side application framework, however as the stack is commonly entirely JavaScript-based, in some implementations of the stack, server-side rendering where the rendering of the initial page can be offloaded to a server is used so that the initial data can be prefetched before it is loaded in the user's browser.11
Main article: Node.js
Node.js is the application runtime that the MEAN stack runs on.
The use of Node.js, which is said to represent a "JavaScript Everywhere" paradigm,12 is integral to the MEAN stack which relies on that concept.
"us-en_cloud_learn_mean-stack-explained". www.ibm.com. IBM Cloud Education. 2019-05-09. Archived from the original on 2020-05-14. Retrieved 2020-02-16. https://www.ibm.com/cloud/learn/mean-stack-explained ↩
Dickey, Jeff (2014-09-24). Write Modern Web Apps with the MEAN Stack: Mongo, Express, AngularJS, and Node.js. Peachpit Press. ISBN 9780133962376. 9780133962376 ↩
"MERN Stack Explained". Archived from the original on 2023-04-27. https://www.mongodb.com/mern-stack ↩
"How to Use MERN Stack: A Complete Guide". Archived from the original on 2023-03-21. https://www.mongodb.com/languages/mern-stack-tutorial ↩
"LAMP vs MEAN, Deciding the right stack for your startup". www.linkedin.com. Retrieved 2020-02-16. https://www.linkedin.com/pulse/lamp-vs-mean-deciding-right-stack-your-startup-robert-roose ↩
"The MEAN Stack: MongoDB, ExpressJS, Angular and Node.js". Tumblr. Apr 30, 2013. http://blog.mongodb.org/post/49262866911/the-mean-stack-mongodb-expressjs-angularjs-and ↩
"Mean Stack". LinkedIn. https://www.linkedin.com/groups/Mean-Stack-5070069 ↩
"The most popular database for modern apps". MongoDB. Retrieved 2020-02-16. https://www.mongodb.com/ ↩
"Express - Node.js web application framework". expressjs.com. Retrieved 2020-02-16. https://expressjs.com/ ↩
II, Thomas Hunter (2019-03-28). "Why should I use a Reverse Proxy if Node.js is Production-Ready?". Medium. Retrieved 2020-02-16. https://medium.com/intrinsic/why-should-i-use-a-reverse-proxy-if-node-js-is-production-ready-5a079408b2ca ↩
"Features - Server Side Rendering | Next.js". nexts.org. Retrieved 2020-02-16. https://nexts.org/features/server-side-rendering ↩
"JavaScript Everywhere and the Three Amigos (WebSphere: Into the wild BLUE yonder!)". 2013-11-14. Archived from the original on 2013-11-14. Retrieved 2020-02-16. https://web.archive.org/web/20131114212619/https://www.ibm.com/developerworks/community/blogs/gcuomo/entry/javascript_everywhere_and_the_three_amigos?lang=en ↩