Our content is free thanks to ag-Grid

ag-Grid is the industry leading JavaScript datagrid

ag-grid.com

The Deep Dive #11

Nov 24, 2020

Type safety in Angular v11, TypeScript performance optimization and Workspaces in npm v7

Welcome to issue #11 of The Deep Dive, a newsletter with a focus on advanced web development, written and curated by Max Koretskyi and and inDepthDev team.

From the blog

​Angular 11 - Towards the Type Safety

Angular 11 is released, and it's focus is on improving the type safety of APIs and fixing the issues. It also brought Webpack 5 opt-in support and some interesting features like lazy loading with named outlets. This article goes through the changes introduced in this version.

​Rendering dynamic components by selector name in Ivy

Angular gives us the mechanism to render components dynamically through View Container. The most dynamic component rendering mechanism would be the one where at the compile time we don't know what component will be rendered. This article talks about rendering an Angular component based on its selector, which is available only at run-time in the browser.

​Craft a complete GitLab pipeline for Angular

Learn Gitlab to build a CI/CD pipeline for Angular apps and libraries. This first article introduces Gitlab pipelines. At the end, you'll get a pipeline fetching project dependencies and running build and tests. It comes with many optimizations and reports integration in merge requests.

​Make your mark with inDepthDev

At inDepth we strongly believe that writing technical articles is one of the most effective ways to learn a topic at a deeper level. Investing your time and effort into acquiring valuable knowledge and sharing it with peers is the most rewarding path to professional growth.

From the web

​TypeScript performance optimization techniques

There are easy ways to configure TypeScript to ensure faster compilations and editing experiences. The earlier on these practices are adopted, the better. Beyond best-practices, there are some common techniques for investigating slow compilations/editing experiences, some common fixes, and some common ways of helping the TypeScript team investigate the issues as a last resort.

​Cypress v6 official release

Cypress now offers full network stubbing support with the introduction of the cy.intercept() command. With cy.intercept() your tests can intercept, modify and wait on any type of HTTP request originating from your app. There are also many potential breaking changes, so go ahead and explore the changelog.

​NPM 7: This Is What I Call An Update

NPM version 7 released two new long-awaited features: workspaces and better peer dependency management. Workspaces will change the way we handle dependencies for all projects and automatic peer dependencies will optimize a process that right now has to be done manually.

​Wouter: A Minimalist Alternative to React Router

React Router is currently the most popular routing solution for building applications with React, but it might have too many features for smaller applications. Wouter is a minimalist routing library that implements only the most used functionality from React Router and targets the most recent environment.

The Deep Dive podcast

​Episode 6: Mutation testing with Stryker

Our guest tells us about mutation testing, how Stryker came to be and how Stryker improves performance with mutation switching and coverage analysis.