1 – Front-end
Main elements of front end developing are HTML, CSS and JS; and absolutely there are some useful libraries for them.
Some of CSS frameworks you can use to quickly make good-looking responsive websites are Bootstrap, Materialize CSS…
2 – Back end
Now it’s time to learn fundamentals of NodeJS, and then it’s good to learn ExpressJS, one the most useful lightweight routing and middleware framework built upon Node. This combo is sufficient to be a skilled JS server side developer, however, you can learning other frameworks and technologies built to work with Node such as:
HapiJS, SailsJS, Koa, FeathersJS…
React Native, PhoneGap (Apache Cordova), MeteorJS…
3 – Database
Database is a systematic and organized collection of data. Databases support storage and manipulation of data and make data management easy. In a database it’s easy to access specific data and work with.
MongoDB is a schema-less database that allows you to work with your objects in a flexible way and thus adapt faster to changes in requirements. Plus, it’s highly scalable and map-reduce based, which make it suitable for big data applications.
4- Package Managers
Example (CLI): npm install react
Example (CLI): yarn add react
4-3) Bower is another package manager for the web. Bower requires node, npm and git.
Example (CLI): bower install react
5 – Related tools
There are some related tools that sometime are necessary to use in JS ecosystem:
Some Babel plugins are used to transform syntax that is not widely supported into a backwards-compatible version. As example arrow functions, which are specified in ES6, are converted into regular function.
5-2) Webpack: is a bundler for your applications that has gained a lot of popularity in recent times. It creates dependency graph which consists of various modules which our web app requires to function correctly as expected.
1 – Code reuse.
2 -Vast Shared libraries.
3 – Various Templates and models.
4 – Great distribution: npm.
5 – Rich repositories like GitHub.
6 – High performance and speed
8 – Free and open source ecosystem
Most popular JS technology stacks to choose from:
1 – Data Streaming Applications
2 – I / O bound Applications
3 – Data Intensive Real-time Applications / DIRT
4 – Software related to JSON files and databases
5 – Single Page Applications
6 – Online web games
7 – AI / Machine Learning Web Based Applications (e.g. TensorFlow.js)
8 – Text, voice and video chat messengers and applications.
9 – Fintech products (e.g. real-time stock broker’s dashboards, Application or system monitoring dashboards).
10 – Internet of things (IoT) gadgets and work with sensors and their monitoring (e.g. working with Raspberry Pie).