What is Full stack JavaScript?
JavaScript has been around for over 20 years. It is the dominant programming language in web development.
In the beginning JavaScript was a language for the web client (browser). Then came the ability to use JavaScript on the web server (with Node.js).
Today the hottest buzzword is «Full Stack JavaScript».
The idea of «Full Stack JavaScript» is that all software in a web application, both client side and server side, should be written using JavaScript only.
✔ Programming in C will slowly decline.
Programming in JavaScript will be more important.
Full Stack JavaScript Developer
A full stack JavaScript developer is a person who can develop both client and server software.
What is JavaScript?
![]()
JavaScript is a comprehensive and powerful programming language that is considered to be one of the most popular web development tools. Existing for almost 20 years till date, the platform was initially constrained to be a part of front end engineering. However, with the growing technology and popularity, it is now used on the server-side as well. From that point onwards, this concept has been consistently gaining immense popularity and is quite under the debate. Now, javascript for web development is quite popular in the global market.
In the section below, we will have an insight on the pros and cons associated with JavaScript Full Stack development technology along with a brief introduction to full-stack development.
Something about Full Stack Development
Note that it’s quite a challenging task to develop a software product by employing only a single technology. A process like this makes use of tech stacks that is basically a combination Of several programming languages and specific standard tools.
Every software product constitutes a client-side as well as a server-side, and therefore we require two different tech stacks to build up each layer. And in order to build mobile or web applications, we require certain approaches which are referred to as full-stack development.
Advantages of Full Stack JavaScript Development
With a lot of amazing features of this development, many of the top companies such as PayPal, Netflix, Groupon and Airbnb have already adopted the concept of Full Stack JavaScript web development for the creation of their products. Apart from these, small start-ups too are taking a keen interest in this approach mainly because of the pros of Full Stack JavaScript Development that are associated with it.
- Better team efficiency, Common language, Lesser Resources
Making use of JavaScript for web applications can turn out to be quite beneficial since it ensures a proper understanding of the code and effective communication among the team members. This reduces the gap between front end JavaScript and back end development that could have otherwise lead to the working of two different teams while making use of separate technologies. With this approach, you can now work on your project along with a
single team for both back as well as front end. This ultimately results in a significant reduction in the efforts as well as the cost required to hire full-stack developers that are eligible for the position.
- Extensive Code Reuse
Full-stack JavaScript development tools allow reusing of the same code and sharing. This greatly helps in reducing the time involved. And by also employing DRY — Don’t Repeat Yourself principle, you could also achieve a significant reduction in the efforts required through reusing of certain sections of the code. This can be carried out on both front as well back end. This implies that you no longer need to take into account any more equivalents of JavaScript utility such as Ruby or Python. This is because you can now deploy the same utility on the browser and server-side.
Apart from this, you are also capable of 40% reduction in code lines while maintaining the same source code.
- High Performance and Speed
The Node JS framework makes use of a comprehensive model that is typically fast and lightweight in comparison to other technologies that are generally used.
This fact is also proved in the latest reports of PayPal that state the results they have achieved while transforming to Full-stack JavaScript from Java. The results showed that the company was successful in making the development process two times faster.
Full-stack JavaScript development services ensure improved performance, reduces the average response time, and also doubles the number of requests catered to per second.
You might also like
- Huge Talent Pool
As per the recent survey, JavaScript frameworks are considered to be the most used platforms, and it also showed that almost 62.5% of respondents used JavaScript indicating approximately 23,000 JavaScript full-stack developers for each website. All these statistics suggest that finding a talented engineer for the process of JavaScript web application development can be quite an easy task.
- Extensive Knowledgebase
Maintained by the top players- Google and Facebook, JavaScript is overall, a rapidly evolving company that owns a sturdy community base. As per the Stack Overflow Survey of the year 2016, this comprehensive programming language has ruled the list of the most popular website technologies and secured about 62,588 votes.
- Free Tool Set
In working with Full-stack JavaScript development, developers can use most of the tools for free as the tools are available as open-source. This indicates that you are going to be charged with subscription expenses or license costs. These open-source tools undergo regular updates and are quite fast to evolve mainly because of the prominent community contributions.
Cons of Full-Stack JavaScript Approach
Every technology is always accompanied with some flaws. Though they might not overpower the benefits, yet one needs to be aware of them while working on their projects.
- Insufficiency with computation-heavy
Note that while dealing with heavy data processing and computation, Node.js might not exactly be the perfect option for the same. Conditions like these might require other technologies that are capable of dealing with such processes. These include algorithms, machine learning or even intense mathematical calculations.
Also, just with one CPU core and a single thread, that is known for catering to one process at one time might tend to block a single intensive computational task. When that thread will be caught up in checking the numbers, your application can fail to work along and process the other requests. This could result in severe delays. This limitation can be tackled by breaking down complicated tasks into simpler ones or by simply developing child processes.
- Relatively young Technologies
JavaScript on the server-side as compared to Java or even PHP tends to be around for only a smaller time interval. As a result of which the integration capabilities are limited, and the knowledge base also tends to be smaller.
- Jack of all Trades, Master of none?
Many experts feel that a developer-only needs to be a master of only a single domain of knowledge. With each new skill being gained, the expertise or quality of the developer tends to reduce.
However, in the case of JavaScript even though the grammar or the syntax tends to remain the same on both the sides server as well as client sides, a developer needs to know a few other details too. These include knowledge about HTTP, cookies, data storage fundamentals and lot more.
This is the reason why there are quite less true JavaScript full-stack developers that have skills set for both front as well as backend.
- Drawbacks of all the separate tools are combined in a stack
Just as in any another tech stack, here too all the weak sides of all the elements are combined. Most of these are relatively insignificant issues that could arise under given circumstances. However, for making use of technology stack, one needs to have prior knowledge about the limitations associated with every tool and prepare their business strategy accordingly.
Conclusion
These were some of the major pros and cons of Full stack JavaScript development that is required to be considered while employing the full-stack JavaScript approach. Make sure to go through the list of top full-stack development companies to come up with efficient business strategies and solutions for your projects.
1.Which are the domains where javascript is used?
JavaScript can be used in crucial domains such as the Internet of things, enterprise web solutions, e-commerce solutions, fintech products, and a lot more.
2.What do you mean by MEANSTACK?
With respect to Full Stack JavaScript, MEAN Stake refers to a bundle of technology that includes Angular JS, Node.js, Express and MongoDB.
3.Who is a fullstack developer?
A full stack developer is nothing but a generalist who has a broad array of skills that covers almost every aspect of product engineering.
MEAN and MERN Stacks: Full Stack JavaScript Development Explained
JavaScript is everywhere. If you are able to read this article or browse through your Facebook news feed, it is mostly due to this single technology.
What is JavaScript? One of the most popular programming languages and a dominant web development technology, JavaScript has been around for over 25 years now.

JavaScript has maintained its #1 position throughout the years, source: GitHub’s State of the Octoverse 2020 survey
Being initially bound to front end engineering, the language has seen even more growth in popularity after an ability to use it on the server side was represented. Ever since there has been a heated discussion going on about the use of full stack JavaScript — with MEAN and MERN being its most popular software stacks.
As a full stack development company with 10+ years of JavaScript engineering experience, we were able to form our own opinion on the topic, which we would like to share with you. In this article, we will explain what a JavaScript full stack is, discuss the pros and cons of JavaScript full stack development, and mention some alternative options. But first, let’s talk about the concept of being a full stack developer.
Full stack developer role and skills
It is almost impossible to create a full-fledged software product using only one technology. This usually involves so-called tech stacks – combinations of programming languages, frameworks, libraries, databases, templates, and other tools.
As all software products consist of the client side and the server side, there are usually two separate stacks that cover each of the layers. However, in the case of full stack development, web or mobile applications can be built from A to Z, covering both front end and back end sides of the project with one technology stack. Accordingly, a specialist that has broad skills across all aspects of product engineering is usually called a full stack developer.

Full stack developer skills
Being considered unicorns due to their rare expertise and versatility, they are in high demand for startups and large companies alike, from Facebook and eBay to Munchery, Betterment, or Tinder.
What is full stack JavaScript: one language, different technologies
JavaScript is the universal language that can be used across all software layers, so a person who applies it for both front end and back end programming is called a JavaScript full stack developer. Taking into account the undisputed popularity of the programming language, such engineers are some of the most sought-after specialists in web development.
Let’s see what the most common technology components of the famed JavaScript full stack are.

Full Stack JavaScript components
Front end. The choice of possible frameworks for front end JavaScript is quite broad. Besides Angular that was the most popular front end development tool for many years since the introduction of AngularJS back in 2010, numerous newer frameworks and libraries such as React, VueJS, Knockout.js, or Backbone.js can be used, depending on the project specifics.
Back end. Server-side JavaScript programming with Node.js and Express web framework is the most common technology choice, but other Node.js-based tools such as Meteor, Sails.js, Koa, restify, or Keystone.js might be used as well.
To learn more about Node.js, consider checking our explainer video.

Node.js advantages and disadvantages explained
Database. As for this part, MongoDB or almost any alternative can be utilized, i.e., MySQL, PostgreSQL, Apache CouchDB, or Apache Cassandra. Check our detailed comparison of most-used database management systems to get a complete picture.
Now, we’ll look closer at some of the most popular tech stacks inside the JavaScript family.
MEAN Stack
When talking about full stack JavaScript the first thing that comes to mind is the MEAN stack. It’s an open-source technology bundle that includes MongoDB, Express, Angular and Node.js. Such big companies as Google, Accenture, Sisense, and PayPal are embracing the MEAN approach. Let’s briefly discuss each of its components.
MongoDB is a NoSQL database program that uses a JSON (JavaScript Object Notation) format to store data. Its perfect compatibility with other JS-based parts of the stack ensures great speed and performance. MongoDB is schema-less, which makes it highly flexible, and is built on a horizontal scale-out architecture that allows it to handle big data. All that made it a preferred choice of millions of developers worldwide.
Express.js is a back end web application framework package that runs on top of Node.js. Simply put, it’s a set of tools that manage the workflow between the client side and the data model, ensuring data transferring. Express is used to create APIs, manage HTTP requests, and render basic routing.
Angular is a popular front end framework to create dynamic user interfaces. Its main distinguishing feature is the ability to interact with the web application without reloading the page, reducing site bandwidth and improving performance. For more information, check out our video on YouTube.

Node.js is a back end JS runtime environment that allows the JS code to be executed outside the browser. With its creation, the server-side JS programming finally became possible, enabling a full development cycle using JavaScript only, changing the software world forever. It’s fast (running on the powerful V8 engine), lightweight, extremely efficient, and suitable for building data-intensive, real-time apps, so no surprise it tops the list of most preferred frameworks.
MERN Stack
MERN is very similar to MEAN with one exception — Angular is exchanged with React whose popularity has steadily grown over the last few years. React is a front end, open source library for building dynamic UI.

Popularity of React vs other frameworks, source: npm trends
The pros and cons of MERN stack vs MEAN stack are solely related to the difference between React and Angular. In short, React has an easier learning curve, ensures better performance due to its virtual DOM implementation, and provides bigger flexibility in tool usage. However, the latter might be considered a drawback since Angular is a complete framework and has everything you need to start developing right out of the box, while with React you’ll have to find and choose additional libraries yourself.
MEVN Stack
Another member of the full stack JS family worth mentioning is MEVN — with VueJS being the alternative framework for front end development. It’s less commonly used than the previous two due to the lower popularity of the VueJS itself.
However, there is an opinion that VueJS learned from the mistakes of Angular and React and took the best from both. As a result, this newer framework is lightweight, flexible, easy to learn and use, and quite self-sufficient, already having a lot of its own libraries.
As of today, VueJS already has 182k stars on GitHub, compared to React’s 167k and Angular’s 72.6k. So, if you consider that a sign of user interest, VueJS has all the chances to grow big soon — boosting the MEVN stack along with it.

Full stacks front end layer compared: Angular vs React vs VueJS
The pros of full stack JavaScript development
The fact that companies like Groupon, Airbnb, Netflix, Medium, and PayPal adopted the full stack JavaScript approach to build some of their products speaks for itself. However, small startups seem to enjoy using it as well. This is mostly due to the number of benefits full stack programming offers.
⊕ Common language, better team efficiency with fewer resources
Having all parts of your web application written in JavaScript allows for better understanding of the source code within the team. Therefore, there is no such thing as a gap between front and back end engineering that occurs when two teams are working separately using different technologies.
Moreover, you can now work with only one team instead of two, for back and front end, which should significantly reduce the cost and effort of finding and retaining the right talent. Such a cross-functional team is a great asset when following Agile methodologies.
⊕ Extensive code reuse
With full stack JavaScript, you save time through code reuse and sharing. Following the “don’t repeat yourself” (DRY) principle, you might be able to reduce the effort by reusing the parts of the code (or sharing libraries, templates, and models) on both back and front end that are very close in terms of logic and implementation.
In other words, you don’t need to think about the JavaScript utility equivalents in Python or Ruby, you just use the same utility on the server and in the browser. Reducing the number of lines of code by up to 40 percent is also a valuable capability when refactoring and maintaining the source code.
⊕ High performance and speed
Node.js uses an event-driven, non-blocking IO model that makes it lightweight and fast as compared to other commonly used back end technologies. To prove this, PayPal published a comprehensive report on the results they have seen in the process of migrating from Java to full stack JavaScript. The company was able to make the development almost 2 times faster while reducing the engineering personnel involved. Moreover, they have seen a dramatic improvement in performance, doubling the number of requests completed per second and decreasing the average response time by 35 percent for the same page. This means that the pages are served 200ms faster, which is definitely a noteworthy result.
⊕ Large talent pool
According to the Stack Overflow annual survey, JavaScript is the most popular programming language, used by 67.7 percent of the respondents. SlashData estimates that, as of October 2020, there are around 12.4 million active JavaScript developers in the world. That means, finding a skilled engineer should be relatively easy.

⊕ Extensive knowledge base
Backed by giants like Facebook and Google, JavaScript has a powerful and fast-growing community. There are around 522,000 repositories on Github and over 2.2 million questions tagged JavaScript on Stack Overflow, indicating the high activity of the developer community and the huge amount of valuable information that can be found out there.
⊕ Free, open source toolset
Most of the full stack JavaScript development tools are free or open source projects. This means you don’t need to bear additional expenses for costly licenses or subscriptions. The tools that are open sourced are updated regularly and evolving fast due to the active community contributions. Instead of relying on a fixed set of technologies, you may use any of more than 1.3 million packages hosted by npm, the largest JavaScript modules registry in the world, recently acquired by Microsoft and integrated with GitHub.
The cons of full stack JavaScript approach
Yet, no technology is perfect. Despite all the benefits the full stack approach offers, there are always some drawbacks to be aware of.
Θ Insufficiency with computation-heavy back end
When it comes to heavy computation and data processing on the server side, Node.js is not the best option. There are lots of far better technologies to handle projects like machine learning, algorithms, or heavy mathematical calculations.
Having a single CPU core and only one thread that processes one request at a time, it might be easily blocked by a single computationally intensive task. While the thread is busy processing the numbers, your application won’t be able to work with other requests, which might result in serious delays.
Yet, there are numerous ways to overcome this limitation. By simply creating child processes or breaking complex tasks into smaller independent microservices that use more suitable technologies and communicate with your back end, you can handle complex computational tasks in Node.js.

Monolithic architecture vs Microservices
Θ Jack of all trades, master of none?
It is a common belief that a developer can truly master only one area of knowledge. With every other skill gained the quality of his/her expertise will decline. While the syntax and grammar of JavaScript are mostly the same on the client and server side, there are still many details to consider.
Aside from being proficient in front end development, full stack JavaScript developers need to have an expertise in back end programming, such as HTTP protocol, asynchronous I/O, data storage fundamentals, cookies, etc. That is why some say that there are really no full stack engineers: Every one of them is either front or back end oriented. However, we have all the reasons to disagree, based on our own experience and strong JavaScript skills.
Θ Drawbacks of every separate tool in the stack combined
As any technology stack, MEAN/MERN/MEVN combines the weak sides of all 4 of its elements. Most of them are minor technical limitations, which appear under certain circumstances. However, in order to use the stack, it’s important to realize possible bottlenecks of every tool and adjust your development strategy accordingly.
Alternative stacks: LAMP, Rails, Django, and others
Full stack JavaScript is not the only one out there. There’s quite a variety of software stacks, and choosing the best fit totally depends on your project requirements. So, in conclusion, we’d like to briefly mention some other popular technology stacks that are used to build software products.
LAMP stack: Linux, Apache, MySQL, PHP
LAMP has been a popular choice for web development since 2000 due to its open-source nature and Linux’s friendliness towards developers. It includes Linux operating system, Apache web server, MySQL database, and PHP application software. Recently, the LAMP stack has slowly morphed into LEMP, with more and more developers replacing Apache web server with NGINX. Although Apache is used by the lion’s share of existing websites, it’s taking losses while NGINX is rapidly growing.
LAMP/LEMP stack is easily modified, traditional, secure, and free – a great choice for enterprise apps and prototypes that often require a high level of customization along with cost-effectiveness. With full access to the source code and an ability to mix and match components of the stack, developers gain great flexibility and can make custom choices depending on each application.
The biggest argument against the LAMP stack comes from its fragmentary nature since the mastery of LAMP requires learning several unrelated languages.
Ruby on Rails: Ruby, SQLite, PHP
Often called just Rails, this web development framework uses Ruby as a programming language and its own default database called SQLite with various compatible web servers such as Apache, NGINX, Passenger, or WEBrick. Rails owes a part of its popularity to Ruby – the language’s clean syntax helps you build complex websites quickly and happily (at least, that’s how Ruby’s creator would like developers to feel). Such well-known apps as GitHub, Shopify, and Airbnb were built with Ruby on Rails.
Rails is especially popular among startups for various reasons. The abundance of shareable software libraries called RubyGems allows businesses to develop rapidly using free and existing components. Also, the simplicity that lies in the foundation of Rails’ philosophy is expressed in such principles as Convention Over Configuration and Don’t Repeat Yourself that minimize your code and help you make fewer decisions.
Django stack: Python, Django, MySQL
Instagram, Mozilla, Bitbucket, and NASA’s website are all powered by this Python-driven environment. With attention towards such technologies as machine learning and big data that majorly rely on Python, the language popularity is steadily growing, according to TIOBE and Stack Overflow, now ranked the 4th most used programming language.
Django follows the “batteries included” approach meaning that all of its functionality comes with the framework and doesn’t require additional libraries. Thanks to this, Django relieves you from making lots of choices and makes it possible to create news, blogs, or eCommerce stores with its abundance of default tools.
With its broad range of tutorials, a supportive community, and a clean and rapid development experience, Django is perfect for rookie Python programmers. If you want something different from what this stack can offer, look into smaller packages such as Flask and Pyramid, each with its own level of flexibility and best use cases.
Other options
You may have noticed that the aforementioned stacks do not offer any default front end solutions. The reason for that is that the front end part of the system is much more versatile. Developers can use a variety of frameworks for front-end regardless of the chosen stack, each created with their own use cases in mind.
You can consult our articles on Angular, React, and Vue.js for a deeper view of their pros and cons, as well as our comparison of four other full stack JavaScript frameworks to make the best choice for your project. Besides, you can check out such tools as Bootstrap or Semantic-UI, created with a bunch of premade elements for quickly building responsive products.
Aside from choosing between the existing software packages, you can compose your own stack by looking at the technology used by popular websites and applications. If you want to build a new Yelp or Reddit, check out portals like StackShare and TechStacks for the lists of all main technologies applied.
An introduction to full stack JavaScript development
In web development, when we think of the word “fullstack,” what does it mean?
In a nutshell, think of a website as being made up of different layers: a backend layer and a frontend layer. These layers, when grouped together, make up a technology stack.
JavaScript was initially only a language for the web client (browser). But then, Node.js brought about the ability to use JavaScript on the web server, giving us full stack JavaScript development.
With full stack JS, every part of the web application, both client side and server side, are written with JavaScript and JavaScript tools. At the moment, companies are on a full stack developer hiring spree.
So, today, we’ll learn more about full stack JavaScript and show you how to get started.
We will learn:
Become a full stack JavaScript developer
In this project-based course you will dissect every part of JavaScript from beginning concepts to more advanced.
What is full stack JavaScript development?
Full stack encompasses all of the layers of a web application, from the tech it runs on, to the database, to the user interface and business logic for the frontend.
A full stack JavaScript developer is able to work with code in the backend and in the frontend to build a web app, all using JavaScript. They are just as competent in creating databases and APIs as they are in creating what the user sees.
Companies that hire full stack
Full stack JavaScript is very popular right now. There are several companies that take advantage of the full stack JavaScript convention and hire full stack software engineers. Here are a few:
- Apple
- Netflix
- Amazon (AWS)
- AirBnB
- Geomotiv
- TeleHealth industries
- JPMorgan Chase Bank
- Most start up companies
Makeup of a JavaScript application
Typically, a server is created that runs on Node.js. Express.js, or a similar framework, is used to get a server up and running quickly. A SQL or NoSQL database is also built using JavaScript.
Finally, a frontend is created with JavaScript, HTML, and CSS. This frontend could be made up of JavaScript libraries or frameworks, CSS preprocessors, or other technologies in addition to the basics.
Pros and cons of full stack JavaScript
There are definitely pros and cons to using JavaScript in the full stack of the application. Here are some to help you think about whether or not a JavaScript tech stack is right for you or your team.
- Team Efficiency. There is no need to rethink the logic in another language that might expand the amount of time needed to complete a task. Similar concepts make writing the code a bit simpler. Teams also work better together if they all understand the codebase.
- Same language means less errors and less code. Since the client and server are both in JavaScript, there is less of a chance for errors in code due to syntax mixups. Using npm’s node_modules in both the front- and backend abstracts code away from your project to make the codebase smaller.
- Efficient.Asynchronous JavaScript, with the use of the event loop, makes it very much a desired technology due to its efficiency. It’s lightweight and fast, making it really popular among large tech companies today.
- Not niche. JavaScript is one of the most popular programming languages in the world, ranking alongside Java and Python. It doesn’t take too long to learn the codebase or to find someone to join the team if a new developer is needed.
- Active Community. The JavaScript web developer community is a vast community with many resources.
- Open-Source. If you were to take a look at NPM homepage, you’ll see that we have a wide variety of open-source projects and modules available for us to use for projects. This lowers the cost-to-market for your application.
- Heavy processing is not efficient. If your project involves heavy mathematical computation or complex algorithms, Node.js is not your best bet. You’re better off using a backend service that is more aligned with working with that type of dataset.
- Young. Node.js is a relatively young piece of technology compared to PostgreSQL or MySQL. Being young sometimes means lack of experience in how the problems are solved.
So, now that we know what full stack JavaScript is and what is has to offer, let’s learn what a software engineer needs to know to be considered a full stack JavaScript web developer.
Become a full stack JavaScript developer
Learn JavaScript without scrubbing through videos or documentation. Educative’s text-based courses are easy to skim and feature live coding environments. In this project-based course you will dissect every part of JavaScript from beginning concepts to more advanced.
How to become a full stack developer
Obviously, a full stack JavaScript programmer needs solid JavaScript skills. But there are many technologies that would be helpful to know when it comes to creating a full stack JavaScript application with advanced functionalities. Let’s break it down by the different facets of full stack.
Full stack tech
- Asynchronous JavaScript: including Promises, Async/Await Functions
- How HTTP Requests work
- Using a Node Package Manager (NPM)
- Testing Libraries, such as MochaJS, Jest, and Jasmine
- Authentication vs Authorization and how to implement it
- DRY principle for OOP
- Software development methodologies: Agile, Waterfall, Kanban
- How to pair program
- Debugging and clearing up bottlenecks
- Basic security prevention measures
- Using environmental variables
- Version Control (Git)
Client side tech
- Hypertext Markup Language (HTML)
- Cascading Style Sheets (CSS)
- Accessibility Standards defined by W3C
- Document Object Model (DOM)
- Differences between programming paradigms
- jQuery
- CSS-in-JS frameworks and libraries, like Bootstrap, Tailwind, styled-components, Material-UI
- CSS Preprocessors including LESS and SASS
- JavaScript frameworks and libraries, including React (with and without Hooks), Vue.js, and Angular.js
Server-side technologies
- Node.js: what it is, how it works, why we need it
- Node.js frameworks: Express.js, Koa, Hapi, etc.
- Backbone.js: a JavaScript library with a RESTful JSON interface
- Cross Origin Resource Sharing (CORS)
- Application Programming Interfaces (APIs) and how to write endpoints that interact with database
- Difference between NoSQL and SQL databases and how to build one using JavaScript
- Cookies vs Tokens and how to implement both
This is not an exhaustive list, and you certainly don’t need to know everything on this list to start to become a full stack developer. Start small!
Most common JavaScript tech stacks
There are several different stacks that incorporate JavaScript both on the frontend and the backend.
MEAN Stack
The MEAN Stack makes use of
- MongoDB
- Express.js
- Angular
- and Node.js.
MongoDB is a NoSQL Document-based database. Express.js is Node.js’s web server framework. Angular is a JavaScript framework that assists in creating performant front-end applications.
MEAN is somewhat newer, and many users flout its flexibility, CLI, and documentation. It is used by companies like Accenture, UNIQLO, and Fiverr.
MEEN Stack
The only difference between the MEAN Stack and the MEEN Stack is the JavaScript library that is used. Ember is what the second ‘E’ stands for here. Ember uses a component-service pattern to build web applications.
MERN Stack
Once again, the only thing that changes in the MERN Stack is the type of JavaScript framework that is used. In this instance, it’s a JavaScript library called React.
There is a large debate about what the difference between the library and the framework is, but generally a library has more freedom.
You can pick and choose what you would like to use out of React’s library to implement and reuse, whereas with a framework you don’t have a choice in the matter.
MEVN Stack
As with all of the previous stacks listed, the only change here is the type of JavaScript framework used. This one uses a framework called Vue.js.
It’s a model-view-view-model (MVVM) framework that separates the UI from the business logic that makes the application functional.
PERN Stack
The PERN Stack uses the same structure as the MERN Stack, but it changes out the database. Instead of a NoSQL-based database, we are using a SQL-based PostgreSQL database.
You would use a SQL-based database when you are looking to be more ACID compliant when conducting transactions. MySQL would work just as well here too.
What to learn next
Congrats! You should now have a good sense of what it takes to be a full stack web developer. As you build your web pages, consider implementing a full stack approach. The next things to learn depends on your current skill level.
If you are new to web dev, start by mastering JavaScript. If you already know the language, consider taking on a framework or library.
Educative’s course JavaScript in Detail: From Beginner to Advanced is a great place to start to get a handle on the frontend aspects of JavaScript. Throughout this course, you will be tasked with 4 projects that will test different parts of your understanding.