MEAN (zkratka pro MongoDB , Express.js , Angular.js , Node.js ) je sada („zásobník“) serverového softwaru, který se stejně jako LAMP používá pro vývoj webu se zaměřením na JavaScript : všechny komponenty zásobníku podporují programování v JavaScriptu, v tomto programovacím jazyce lze psát aplikace MEAN na straně serveru i na straně klienta . Dokumentově orientovaný DBMS MongoDB je zodpovědný za úložnou vrstvu v zásobníku ; hlavní realizační platformou je JavaScriptová platforma na straně serveru Node.js , vývoj serveru je implementován pomocí frameworku Express.js běžícího nad Node.js a vývoj front-endové části webových aplikací založených na prohlížeči je MVC – framework Angular.js .
Zkratku „MEAN“ navrhl vývojář MongoDB Valery Karpov na osobním blogu; Logo složené z prvních písmen komponent zásobníku navrhl Austin Anderson , který jej poprvé použil pro diskusní skupinu zásobníku na profesionální sociální síti LinkedIn [1] .
Oproti „klasickému“ zásobníku LAMP se MEAN liší v několika aspektech. Místo tradičního systému pro správu relačních databází MySQL zaujal bezschematický dokumentově orientovaný systém NoSQL ; Linux (nebo nějaký jiný operační systém ) již není součástí zásobníku, protože MEAN je multiplatformní a méně závislý na specifikách operačního systému a zaměřuje se především na vazbu na programovací jazyk JavaScript , který je základem Node.js – platforma, na které běží i role webového serveru (nahrazuje Apache v LAMP). Přímé zpracování MongoDB s daty JSON poskytuje snadný vývoj ve stylu REST bez režie analýzy a převodu formátů [2] .
Důležitým rysem MEAN je přechod od generování webových stránek na straně serveru k tvorbě převážně jednostránkových aplikací , přenesení jádra implementace MVC ze strany serveru na stranu klienta, což je zajištěno zahrnutím Angular.js. v zásobníku (navíc rámec Express.js zahrnutý v zásobníku poskytuje tradiční směrování na straně serveru a generování stránek) [2] .