JavaScript News and Updates of January 2022
Tags: news, webdev, javascript, html
Published: 2022-01-31 09:33:55

Greetings to all JavaScript admirers and welcome to the first news digest of 2022! I am excited to continue sharing with you interesting bits of news, releases, and useful tips from the JavaScript world. Get ready to delve into interesting facts from the JavaScript Rising Star report, details of the AngularJS discontinuation, and an unusual malicious attack on popular open-source libraries. I’ll also provide you with a review of recent updates for TypeScript, Deno, and DHTMLX Suite. The second part of the digest includes a pack of useful materials to boost your JavaScript knowledge. 

##News and Updates
###2021 JavaScript Rising Star: Latest Overview of JavaScript Technologies
![JavaScript rising star report](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m685rjbsvzlm5rpfd4lo.jpg)
It is hard to make predictions on the future of JavaScript without knowing about the trendy JavaScript tools of 2021. The 6th edition of the JavaScript Rising Star report allows us to become familiar with the most starred JavaScript projects on GitHub.

It is surprising that the first place in the overall ranking is taken by a new command-line tool named [zx](https://github.com/google/zx) with (+24.3k☆). Released last year by Google, it has quickly become a viable option for writing simple command-line scripts in JavaScript and TypeScript. The top three also include the build tool Vite (+21.4k☆), and Next.js (+19.7k☆). Creators of this report also pointed out a number of interesting trends such as the growing popularity of meta frameworks, wider use of Rust language in the JavaScript infrastructure, growing importance of ES modules and edge computing, etc. Read the [full report](https://risingstars.js.org/2021/en) to get more useful information on the subject.

###Google no Longer Supports AngularJS 
![AngularJS is discontinued](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y5i4ery8t685zsyyq822.jpg)
I hope that web developers who previously relied on AngularJS managed to find an alternative to this once popular technology by the start of this year. Several years ago, Google informed the development world about its plan to discontinue long-time support of AngularJS. And the time has come. It means that this framework won’t receive any updates and fixes. 

That is why affected dev teams were recommended to migrate their apps from AngularJS to its successor - Angular. They can also consider other popular JS frameworks such as React or Vue.js. But most interestingly, there is also a solution for those who want to continue using AngularJS in their projects. The [XLTS.dev](https://xlts.dev/) team intends to provide extended long-term support for AngularJS. Learn more about this big news in the [Angular blog](https://blog.angular.io/discontinued-long-term-support-for-angularjs-cc066b82e65a).

###Introducing DHTMLX Suite 7.3
![DHTMLX Suite 7.3 release](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9oksp4iax3szgzew1w9h.jpg)
If you are looking for a way to speed up the creation of a modern UI, DHTMLX Suite can be a good helper.  It provides a collection of ready-to-use and highly customizable UI widgets for covering most of your development needs. This JavaScript library regularly receives updates that bring in new features and useful fixes. The latest one has been rolled out this month.

The most notable novelty introduced in DHTMLX Suite v7.3 is a new treemap chart for visualizing and analyzing hierarchical data. End-users now can add free text as new options in drop-down lists of the ComboBox input right from the UI. Similar functionality is also available in Combo editors of Grid and TreeGrid and Combo control of Form. When using Grid and TreeGrid widgets from the Suite package, you have an opportunity to add custom filters in the columns of data tables built with DHTMLX for more effective data management. Find more details about this release in the [DHTMLX blog](https://dhtmlx.com/blog/dhtmlx-suite-7-3-new-treemap-chart-free-text-combobox-input-custom-filters-grid-treegrid/).

###Deno 1.18 Released
![Deno minor update](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0t4cxb2vatxx24dftp9v.jpg)
The development team led by Ryan Dahl continues pushing Deno to the next level. After joining the TC39 working group last month, they rolled out two minor updates for this promising JS runtime environment in two months. The latest one v1.18 comes with a range of new features and improvements. The most notable novelties are fully implemented Web Cryptography API, auto-discovery of the config file, stabilized API for nested test steps, improved startup time. This version of Deno is delivered with the V8 JavaScript engine updated to version 9.8. Check out the official [release notes](https://deno.com/blog/v1.18) to learn more about the v1.18 release.

###Meet TypeScript 4.6 Beta 
![TypeScript 4.6 beta](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/au5ts9ib58eob4wai1sk.png)
TypeScript is one of the most [loved and wanted](https://insights.stackoverflow.com/survey/2021#technology-most-loved-dreaded-and-wanted) programming languages in the development community and regular updates help to maintain this status. This month, Google announced the beta release of TypeScript 4.6 with enhancements for coding and control flow analysis. The list of updates includes the possibility to run other code before **super()**, improved recursion depth checks, enhancements in indexed access inference, etc.  According to the TypeScript iteration plan, the final release of TypeScript 4.6 is expected on February 22nd, 2022. Visit the [TypeScript blog](https://devblogs.microsoft.com/typescript/announcing-typescript-4-6-beta/) to become familiar with the full list of updates.

###Two Popular Open-Source Libraries are Corrupted by Their Creator
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f7q5gp23cjbugbrbsvgp.jpg)
Early this month, the malicious attack on free-to-use libraries, namely [color.js](https://github.com/Marak/colors.js) and [faker.js](https://github.com/marak/Faker.js/), created a real uproar in the development community. These tools are used in thousands of projects and their downloading rate from npm is estimated in millions per week. To everyone’s surprise, it turned out to be an inside job. Marak Squires, the creator of these libraries, intentionally committed malicious code to his projects and published updated codebases on GitHub and npm. It is said that this sabotage was caused by unsuccessful attempts of Mr. Squires to monetize his projects. Fortunately, malicious packages were quickly removed and the attacker’s account was suspended. The story sparked a new wave of discussion in the development community on possible steps to make the development and maintenance of open-source projects more sustainable.

##Useful Tips and Articles
###Choosing the Right Tool for Building a JavaScript Kanban Board
If you are working on an enterprise app, you may be interested in complementing your project with a  JavaScript Kanban. This tool has a lot of popularity  in the field of project management. It serves to provide a project team with the progress of project tasks through the workflow visualization. Implementing this kind of functionality from scratch takes a lot of time. It often becomes an unaffordable luxury within tight project deadlines. In such a case, it is reasonable to consider using ready-made JavaScript Kanban widgets designed to significantly speed up the development process and avoid unnecessary bugs. This [article](https://dzone.com/articles/top-seven-javascript-kanban-widgets-for-effective) offers a nice overview of the most popular JavaScript Kanban widgets currently available on the market.

###Listing of JavaScript Coding Habits to Avoid
When looking for ways to improve JavaScript knowledge, programmers usually prefer to study best practices on topics of interest. But it can also be useful to adopt an opposite approach i.e. consider the things that should never be done when writing code in JavaScript. The author of this [article](https://blog.bitsrc.io/javascript-worst-practices-dc78e19d6f12) offers you to examine 5 JavaScript coding habits that cause a lot of problems in your coding undertakings. 

###New Opportunities for Using ECMAScript Modules
ECMAScript (ES) modules became a part of the JavaScript specification in 2015. They are defined with the help of _export/import_ statements and serve as a mechanism for code reuse. Over time, this functionality became more mature. Dr. Axel Rauschmayer, a well-known expert and author of books on JavaScript, published an informative [article](https://2ality.com/2022/01/esm-specifiers.html) dedicated to publishing and consuming ES modules via packages. I would recommend you to get acquainted with this useful material.

###Learning Rare JavaScript Features 
JavaScript offers programmers a lot of various features and their number is constantly growing. That is why it is next to impossible to master all of them but it does not mean that you should not strive towards this ideal. It is especially cool to learn some little-known JavaScript tricks that can be useful in real use-case scenarios. This [video](https://www.youtube.com/watch?v=v2tJ3nzXh8I) provided by the Web Dev Simplified channel highlights 5 rarely encountered JavaScript features to help you enrich your coding skills.

###15 Useful JavaScript One-Liners
There is a lot of legitimate criticism against JavaScript. But many problems encountered when writing JavaScript code can be solved with minimum effort. JavaScript syntax allows you to get many things done with just a single line of code. This [article](https://livecodestream.dev/post/awesome-javascript-one-liners-to-look-like-a-pro/) provides a range of useful  JavaScript one-liners that will help to make your code more concise and readable.

###Dealing with Unexpected Intersections in TypeScript
If you write programs in TypeScript instead of JavaScript, you may face such an issue as unexpected type intersections. This problem commonly occurs in the following situations:
- When updating object properties (if a union type variable is used as a key)
- After the object destructuring (the destructured properties lose their connection to the original type)

The author of this [article](https://fettblog.eu/typescript-unexpected-intersections/) provides you with some useful tips on how to take care of this issue in your project.

Stay tuned for more interesting stuff from the JavaScript land in the coming months!