Decide if MEAN is right for you
MEAN is a development stack for building and hosting web applications. MEAN is an acronym for its component parts: MongoDB, Express, AngularJS, and Node.js.
Why would I pick MEAN?
All of the components of the MEAN stack are reliable, well-understood, and open source, but so are many other development stacks. Here are some reasons you might choose MEAN over other development stacks.
Your data isn't highly structured
MongoDB is what's called a NoSQL database. A NoSQL database doesn't require data to be structured in a pre-defined way as it would with a relational database like Microsoft SQL Server or MySQL. Instead, MongoDB stores its data in JSON-like documents that don't require the rigid data structures that MySQL or other relational databases require.
It's well documented
The components of the MEAN stack are all popular right now. Resources for working with MongoDB, Express, AngularJS, and Node.js are easy to find.
It runs almost anywhere
You can also develop MEAN stack applications from your favorite development environment – whether that's Windows, macOS, or Linux.
Why might MEAN not be right for me?
Here are some reasons you might want to choose a development stack other than MEAN.
Even if you decide that MEAN is not right for you, you might still be interested in this module. Many of the patterns you'll see apply to other kinds of web application frameworks.
Your data is highly structured
If your data is highly structured, you might benefit from putting your data in a relational database such as Microsoft SQL Server or MySQL.
For example, the LAMP stack, which consists of Linux, Apache, MySQL, and PHP (sometimes with Perl or Python instead of PHP), might better align to your strengths and experience.