The Nx Dev Tool for Monorepos
Tags: nx, angular, react, nestframework
Published: 2020-08-21 14:45:33

> [Original Post](https://blog.yggdrasilts.com/nx-dev-tool-monorepos/)

In JavaScript world, we already know the battles to be the most popular framework or library in the community. There are lots of these creating awesome sites to attract developers for its documentation and usability, showing how easy is to create an application using them, etc.

Over time, some of these frameworks / libraries achieved this popularity but not alone and instead of talking about only frameworks or libraries, we started to listen the **JavaScript Stacks**.

These JavaScript Stacks are just a selection of some of those popular frameworks / libraries to build the different parts of an application. The popular known stacks are:

- [MEAN](https://en.wikipedia.org/wiki/MEAN_(solution_stack))
  
- [MERN](https://wikitia.com/index.php?title=MERN_(solution_stack)&mobileaction=toggle_view_desktop)
  
- [MEVN](https://mevn.madlabs.xyz/?ref=madewithvuejs.com)
  

As you can see, all of these stacks are nearly the same but the frontend framework, and all of them are also valid to build whatever web application you want.

Enterprises are adopting this JavaScript Stacks to build its web applications even its backend as well. Due to their amount of applications and/or libraries, they have necessities not to only solve what JavaScript Stack to choose, they want to know how to organize the code, architecture patterns to build a scalable application and share components or libraries between their applications as well. In this case, the [Nx Dev Tools](https://nx.dev/angular) it is the evolution of this JavaScript Stacks to choose.

## The Nx Dev Tools

[Nx Dev Tools](https://nx.dev/angular), as its website says, *is a set of extensible dev tools for monorepos, which helps you develop like Google, Facebook, and Microsoft* and was created in [Nrwl.io](https://nrwl.io/), founded by two ex-Googlers, **[Victor Savkin](https://twitter.com/victorsavkin)** & **[Jeff Cross](https://twitter.com/jeffbcross).**

In the current version, Nx workspace has different options to build projects with the following stacks:

- Frameworks to build **FRONTEND** applications
  - [Angular](https://angular.io/)
  - [React](https://reactjs.org/)
  - [Web Components](https://www.webcomponents.org/)

- Framework to build **BACKEND** applications
  - [NestJS](https://nestjs.com/)
  - [Nextjs](https://nextjs.org/)
  - [Express](https://expressjs.com/)

> In the current version there is no support for [Vue.js](https://vuejs.org/) but you can find some comments talking about its support [here](https://github.com/nrwl/nx/issues/1541#issuecomment-613768164).

As you can see, [Nx Dev Tools](https://nx.dev/angular) is an awesome resource thought to help developers and enterprises to build whatever they want.

## Nx Dev Tools - Resources

Besides its core features, [Nx Dev Tools](https://nx.dev/angular) also has a CLI that helps you setup, develop, build, and maintain applications and more and more Plugins, build by their own or by the community, that contain schematics and builders to extend a Nx workspace.

- [Nx CLI](https://nx.dev/angular/cli/overview)
  
- [Nx Plugins](https://nx.dev/angular/plugins/overview)
  

## How to Start

At this stage, you should want to know how to start using it, shouldn't it? To start, you can check the above links or if you want to get to work, then you can check its Angular tutorial in the following link:

- [Tutorial: Step 1: Create Application](https://nx.dev/angular/tutorial/01-create-application)
  

> [Angular](https://angular.io/) and [NestJS](https://nestjs.com/) are my prefered options to build applications 🤓

## Conclusion

If you are thinking to start a big, medium or small project, I recommend you to take a look its [Getting Started Page](https://nx.dev/angular/getting-started/why-nx) to see how this tool can help you to organize your entire project.

> In next posts I will show you examples using this Nx Dev Tools 🙂.