ES6 Destructuring

What is destructuring assignment? The destructuring assignment syntax is a JavaScript expression that makes it possible to unpack values from arrays, or properties from objects, into distinct variables. - MDN In essence, it is a convenient way to extract value/values from data stored in (possibly nested) objects and arrays. This feature was introduced in the 6th Edition of the ECMAScript standard, ES6 for short. It makes code concise, more readable and helps to avoid repeated destructing expressions.

Streams: An underrated but very powerful concept in NodeJS

A stream is an abstract interface for working with streaming data in Node.js. Streams have gained the reputation that it is hard to work with and harder to understand. However, it is a highly underrated but very powerful concept in Node.js. This article will help in understanding of streams, how to work with them and where to use this module. Streams: Introduction The official documentation of Node.js defines stream as an abstract interface for working with streaming data.

Image Grid using Material UI in React

A simple example of a scrollable image grid using Material UI in ReactJS. We had a requirement for a scrollable image grid which will load images lazily. We started with the Grid List example provided in Material UI. We added a few more capabilities Load images lazily On clicking the tile, bigger size image is displayed with download option. Few screenshots of the image grid Image Grid Expaned Image We also used React Infinite Scroller which is a simple, lightweight infinite scroll package that supports both window and scrollable elements.

Love thy fellow programmer as thyself: Setup ESLint and Prettier in VSCode

This is a short guide to configure VS Code for a consistent and reusable development set-up. ESLint Setup ESLint is an open source JavaScript linting utility. Code linting is a type of static analysis that is frequently used to find problematic patterns or code that doesn’t adhere to certain style guidelines. The primary reason ESLint was created was to allow developers to create their own linting rules. ESLint is designed to have all rules completely pluggable.

Clustering & Inter Process Communication (IPC) in NodeJS

Introduction A single instance of Node.js runs in a single thread. This does not allow to take advantage of multi-core systems automatically. However, by leveraging ‘cluster module’ one can take advantage of multiple CPU cores. Clustering improves your app’s performance and lets you achieve zero downtime (hot) deployments easily. Also keep in mind that number of workers that can be created is not limited by the number of CPU cores of the machine.