InfoQ Homepage JavaScript Content on InfoQ
-
ECMAScript's Top-Level Await Proposal Implemented in V8, Babel and Webpack
The top-level await's ECMAScript proposal, which reached Stage 3 last year, is now implemented in the V8 JavaScript engine, and supported by Webpack and Babel. Top-level await enables dynamic dependency pathing, resource initialization, and dependency fallbacks at module import time. Top-level await results in a non-deterministic module execution order.
-
Babel 7.7 Released with Improved TypeScript Support, Top-Level Await and More
The recently released Babel 7.7 now parses top-level await, Flow enum declarations (Flow proposal), and proposes recovery options from certain syntax errors. Babel 7.7 now supports TypeScript 3.7. Babel also introduces a new optional babel.config.json configuration files, and miscellaneous other features and bug fixes.
-
Snowpack Releases 1.0, Seeks to Speed Up App Development by Removing the Need for Bundlers
The Pika package registry recently released the first major version of Snowpack. Snowpack seeks to streamline the developer experience by leveraging web standards and modern browsers. Developers who restricts themselves to using ES modules, and standard features of the JavaScript language may no longer need to go through an often complex build chain to build, run and debug their applications.
-
Decision Strategies for a Micro Frontends Architecture
Micro frontends is an architectural style for frontend applications based on the concepts of microservices. Luca Mezzalira believes this is a style that will change the future of these applications. There are some challenges though and architectural decisions that must be made, and he has therefore created a decisions process for embracing a micro frontends architecture.
-
ESLint 6.7.0 Released
ESLint, a powerful JavaScript linting tool, recently released version 6.7.0. This release provides developers with a new Suggestions API to apply manual linting suggestions and a new ignorePatterns configuration property to better control the files ESLint ignores.
-
New Features and Design Principles of Vue 3.0 - Evan You at VueConf Toronto
With the major iteration of the Vue.js framework scheduled for Q1 2020, Evan You, creator and project lead of Vue.js, discussed in detail at VueConf Toronto the design principles behind Vue 3, together with the latest additions to the new release.
-
Building a Custom React Renderer - Sophie Alpert at ReactConf 2019
React developers may know that the renderer lives in a separate module from React. They may not know that they can write their own renderer by implementing the same interface than React DOM implement. Sophie Alpert, former manager of @reactjs team, gave in her talk at ReactConf 2019 a concrete example of how to use the react-reconciler package to implement a custom renderer.
-
New Elm Release Helps Developers Learn Syntax
Evan Czaplicki, Elm’s creator, recently released Elm 0.19.1 with improved error messages. Elm 0.19.1 goes a step further in realizing Elm’s vision of being a delightful language for reliable webapps. The new release comes a year after the previous one (0.19) which emphasized smaller assets, and faster builds.
-
Reasons to Use ReasonML - Anton Tuzhik at ReactiveConf 2019
Anton Tuzhik, recently presented a talk at ReactiveConf 2019 in Prague detailing the reasons why he thinks ReasonML is a good option for implementing applications. ReasonML supports native and JavaScript as compile-targets, provides a sound type system, encourages immutable data structures, and has good interoperability with the JavaScript ecosystem.
-
CSS Architecture for Component-Based Applications
CSS architecture is a complex subject that is often overlooked by developers as it's now possible to encapsulate the CSS per component and avoid many of the pitfalls. While this 'workaround' can make the lives of developers simpler, it does so at the price of reusability and extendibility.
-
Wildcard HTTPS Subdomain Configuration with static.fun
ZEIT Now recently introduced easy deployment to HTTPS-enabled subdomains, and to celebrate this announcement, created the open-source static.fun service.
-
V8 JavaScript Engine 8.0 Reduces Heap by 40%, Adds Optional Chaining and Null Coalescing
The latest release of Google's V8 JavaScript engine, V8 8.0, uses pointer compression to reduce heap size by 40% and with no performance hit. Additionally, it adds support for optional chaining using the ?. operator and for nullish coalescence using ??. V8 v8.0 will be officially available with Chrome version 80.
-
Introducing React Concurrent Mode
React's "Concurrent Mode" refers to a set of newly-released experimental features in React that aim to increase the responsiveness of applications by using interruptible rendering.
-
Vue.js CLI 4 Released
The Vue CLI team recently updated its command line tool for Vue.js development to version 4. The release will help developers automate the migration process, use additional package managers and remove extraneous whitespace for more efficient DOM structures.
-
Preact X Adds Features, Remains Lean
The Preact team announced Preact X, adding significant updates such as fragments and hooks to their React alternative, while retaining their lean size of less than 4KB, gzipped.