Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

JavaScript stack

From Wikipedia, the free encyclopedia
This articlemay incorporate text from alarge language model. Such text potentially includeshallucinated information orfictitious references.Copyright violations or claims lackingverification must beremoved. Please see theassociated project page for additional guidance.(July 2025)
Collection of software technologies

AJavaScript stack is a collection of technologies that useJavaScript as a primary programming language across the entire software development process, typically combining front-end and back-end tools to build full-scale web applications. With the rise ofNode.js, JavaScript can now be executed server-side, allowing developers to use a single language for both client and server development. This unification simplifies the development workflow, improves code reuse, and enhances productivity by enabling consistent logic and tooling across the application. JavaScript stacks are often favored for their speed, scalability, and access to a vast ecosystem of libraries and frameworks available through platforms likenpm. The increasing popularity of these stacks reflects a broader shift toward full-stack JavaScript development in modern web engineering.[1][2][3][4]

MEAN/MERN/MEVN

[edit]
Common logo used to represent MEAN stacks.

MEAN (MongoDB,Express.js,AngularJS (orAngular), andNode.js)[5] is asource-availableJavaScriptsoftware stack for buildingdynamic web sites andweb applications.[6] A variation known as MERN replaces Angular withReact.js front-end,[7][8] and another named MEVN useVue.js asfront-end. Because all components of the MEAN stack support programs that are written in JavaScript, MEAN applications can be written in one language for bothserver-side andclient-side execution environments. Though often compared directly to other popular web development stacks such as theLAMP stack, the components of the MEAN stack are higher-level including a web application presentation layer and not including an operating system layer.[9]

The acronymMEAN was coined by Valeri Karpov.[10] He introduced the term in a 2013 blog post and the logo, initially created by Austin Anderson for the original MEAN stackLinkedIn group, is an assembly of the first letter of each component of the MEAN acronym.[11]

Following the adoption of the MEAN stack, alternative versions emerged to accommodate different front-end preferences while maintaining the same JavaScript-based architecture. TheMERN stack substitutes Angular withReact.js, a declarative, component-based library developed by Meta (formerly Facebook), which allows for greater flexibility in building dynamic user interfaces. Meanwhile, theMEVN stack integratesVue.js, a progressive front-end framework known for its gentle learning curve and ease of integration into existing projects. Both variations preserve the core back-end technologies—MongoDB, Express.js, and Node.js—while catering to developers who prefer a different approach to front-end development. These stacks reflect the growing diversification of the JavaScript ecosystem, offering developers choices based on performance, learning preferences, and community support, while still enabling full-stack development using a single programming language.[1][12][13]

Components

[edit]

The components of MEAN, MERN, and MEVN are:

MongoDB

[edit]
Main article:MongoDB

MongoDB is a NoSQL database program that uses JSON-likeBSON (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.[14]

Express.js

[edit]
Main article:Express.js

Express.js (also referred to as Express) is a modular web application framework package forNode.js.[15]

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 areverse proxy such asNGINX orApache for performance reasons.[16]

Angular, React, or Vue

[edit]
Main articles:Angular (web framework),React (JavaScript library), andVue.js

Typically data is fetched usingAjax 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 is used. Here the rendering of the initial page can be offloaded to a server. It is used so that the initial data can be prefetched before it is loaded in the user's browser.[17]

Node.js

[edit]
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,[18] is integral to the MEAN stack which relies on it.

JAMstack

[edit]

JAMstack (also stylized asJamstack) is aweb developmentarchitecture pattern[19] andsolution stack. The acronym "JAM" stands forJavaScript,API andMarkup (generated by astatic site generator) and was coined by Mathias (Matt) Biilmann, CEO ofNetlify, in 2015.[20] The idea of combining the use of JavaScript, APIs and markup has existed since the beginnings ofHTML5.[21][22]

In JAMstack websites, theapplication logic typically resides on the client side (for example, an embedded e-commerce checkout service that interacts with pre-rendered static content), without being tightly coupled to abackend server. JAMstack sites are usually served with aGit-based orheadless CMS.[20][23]

Other stacks

[edit]

OS-level stacks

[edit]
MLVN[24]
MongoDB (database)
Linux (operating system)
Varnish (software) (frontend cache)
Node.js (JavaScript runtime)
WISAV/WIPAV
Windows Server (operating system)
Internet Information Services (web server)
Microsoft SQL Server/PostgreSQL (database)
ASP.NET (backend web framework)
Vue.js (frontend web framework)

OS-agnostic web stacks

[edit]
GRANDstack[25]
GraphQL (data query and manipulation language)
React (web application presentation)
Apollo (Data Graph Platform)
Neo4j (database management systems)
PERN[26]
PostgreSQL (database)
Express.js (application controller layer)
React (JavaScript library) (web application presentation)
Node.js (JavaScript runtime)
T-REx[27]
TerminusDB (scalablegraph database)
React (JavaScript web framework)
Express.js (framework forNode.js)

References

[edit]
  1. ^abTilkov, Stefan, and Steve Vinoski. "Node.js: Using JavaScript to Build High-Performance Network Programs."IEEE Internet Computing, vol. 14, no. 6, 2010, pp. 80–83. DOI: 10.1109/MIC.2010.145
  2. ^Pimentel, Jon.Full-Stack React Projects. Packt Publishing, 2018.
  3. ^"Node.js — About Node.js®".nodejs.org. Retrieved2025-06-18.
  4. ^bin Uzayr, Sufyan (2023-08-09),"JavaScript for Mobile Usage",Conquering JavaScript, Boca Raton: CRC Press, pp. 371–402,doi:10.1201/9781003356578-7,ISBN 978-1-003-35657-8, retrieved2025-06-18
  5. ^"us-en_cloud_learn_mean-stack-explained".www.ibm.com. IBM Cloud Education. 2019-05-09.Archived from the original on 2020-05-14. Retrieved2020-02-16.
  6. ^Dickey, Jeff (2014-09-24).Write Modern Web Apps with the MEAN Stack: Mongo, Express, AngularJS, and Node.js. Peachpit Press.ISBN 9780133962376.
  7. ^"MERN Stack Explained".Archived from the original on 2023-04-27.
  8. ^"How to Use MERN Stack: A Complete Guide".Archived from the original on 2023-03-21.
  9. ^"LAMP vs MEAN, Deciding the right stack for your startup".www.linkedin.com. Retrieved2020-02-16.
  10. ^"The MEAN Stack: MongoDB, ExpressJS, Angular and Node.js".Tumblr. Apr 30, 2013.
  11. ^"Mean Stack".LinkedIn.
  12. ^"Styling React". 2022-02-11. pp. 243–255.doi:10.1002/9781119685630.ch10.ISBN 978-1-119-68554-8.{{cite book}}:|journal= ignored (help);Missing or empty|title= (help)
  13. ^"Vue.js".vuejs.org. Retrieved2025-06-18.
  14. ^"The most popular database for modern apps".MongoDB. Retrieved2020-02-16.
  15. ^"Express - Node.js web application framework".expressjs.com. Retrieved2020-02-16.
  16. ^II, Thomas Hunter (2019-03-28)."Why should I use a Reverse Proxy if Node.js is Production-Ready?".Medium. Retrieved2020-02-16.
  17. ^"Features - Server Side Rendering | Next.js".nexts.org. Retrieved2020-02-16.
  18. ^"JavaScript Everywhere and the Three Amigos (WebSphere: Into the wild BLUE yonder!)".IBM. 2013-11-14. Archived fromthe original on 2013-11-14. Retrieved2020-02-16.
  19. ^"What is Jamstack?".Jamstack.org.
  20. ^abCardoza, Christine (2020-07-06)."Jamstack brings front-end development back into focus".SD Times. Retrieved2021-04-05.
  21. ^Schmitt, Christopher; Simpson, Kyle (2011-11-14).HTML5 Cookbook. "O'Reilly Media, Inc.".ISBN 978-1-4493-9679-4.
  22. ^Pecoraro, Christopher; Gambino, Vincenzo (2021-05-07).Jumpstart Jamstack Development: Build and deploy modern websites and web apps using Gatsby, Netlify, and Sanity. Packt Publishing Ltd. pp. 2–7.ISBN 978-1-80020-590-1.
  23. ^Biilmann, Mathias (2019).Modern Web development on the JAMstack : modern techniques for ultra fast sites and web applications. Phil Hawksworth. Sebastopol, CA.ISBN 9781492058564.OCLC 1123220815.{{cite book}}: CS1 maint: location missing publisher (link)
  24. ^Sharma, A. (2018)."Chapter 2: Introducing MEVN".Full-Stack Web Development with Vue.js and Node. Packt Publishing Ltd. pp. 6–30.ISBN 9781788830775.
  25. ^"GRANDStack". Retrieved24 Dec 2019.
  26. ^"Learn the PERN Stack by building a web app - Full video course".freeCodeCamp.org. 2020-03-20. Retrieved2021-06-19.
  27. ^"TerminusDB on Twitter".Twitter. Retrieved2020-10-14.
Retrieved from "https://en.wikipedia.org/w/index.php?title=JavaScript_stack&oldid=1301087935"
Category:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp