Practical Modern JavaScript The first book explains ES6 language features from a practical viewpoint and using tons of code samples We’ll be looking at everything from transpilation, destructuring and arrow functions to proxies and generators, but always using plain language and concise code examples that can be applied in real applications.

Mastering Modular JavaScript Crafting a perfect module that’s simple and focused, yet highly reusable, composable, testable might be hard to reason about without first learning about the guiding principles behind module thinking, such as the single responsibility principle, the revealing module pattern, and so on. Proper documentation, versioning, and module deployment flows for npm also play a large role in developing successful packages.

Universal JavaScript, Modules Everywhere Once you have your modules down, how do you interconnect them and scale out an application without ending up with highly complex modules? All these questions are addressed over the span of two self-contained books: Mastering Modular JavaScript and Universal JavaScript.

Testing JavaScript Modules A book on testing goes over all the latest testing techniques in detail. Instead of going deep into any one framework, we’ll explore the underlying concepts of what designing proper test suites entails. We’ll also take a look at various kinds of testing, such as visual diff testing, headless browser testing, integration testing, unit testing, and so on.