Skip to content

The Future of Node.js: Experimental Web APIs and Default Test Runner for Node 18

In the latest This Dot State of Node.js, Node.js core contributors shared their thoughts on the new APIs released with Node.js 18.

Here is a complete list of the panelists that participated in the online event:

Host:

Tracy Lee, CEO, This Dot Labs, @ladyleet

Panelists:

Beth Griggs, Senior Software Engineer, Red Hat @bethgriggs_ Colin Ihrig, Engineer, Deno @cjihrig Danielle Adams, Software Engineer, Amazon Web Services @adamzdanielle Michael Dawson, Node.js Lead, Red Hat and IBM @mhdawson1

You can watch the full This Dot State of Node.js, event on This Dot Media's YouTube Channel. Here are detailed key points from the panel discussion:

Node.js 18

Node.js 18 was released in April with updates to Google’s V8 JavaScript Engine, experimental browser APIs, and a Test Runner.

Getting involved in Node.js

The Node API Working Group is a growing community of developers who contribute to the Node.js Open Source project. To get involved with meetings, working groups, and projects happening, visit (the Node.js website](https://nodejs.org/en/get-involved/).

The Future of Node.js

Node.js had a very successful first 10 years, and the team is working towards the next 10 years of building and maintaining the ecosystem. To help achieve the vision a working group, The Node.js Next 10 Working Group has set up a meeting every two weeks to discuss documentations and projects.

Node.js 18 new Features

There are so many new features to be excited for with the Node.js 18 release, including some web APIs and a test runner.

Native Fetch API (experimental)

Node.js 18 has enabled an experimental fetch API on the global scope by default #41811,

const res = await fetch('https://nodejs.org/api/documentation.json');
if (res.ok) {
  const data = await res.json();
  console.log(data);
}

Node.js Test Runner (experimental)

The Node.js Test Runner node:test facilitates creating JavaScript tests that report results in TAP format. #42658

Upgrade to Node.js 18

To upgrade from a version of Node.js to the latest version 18, it’s a good idea to read the change logs and follow the breaking changes.

This Node.js release follows the experimental flag for major features to give the community the opportunity to test out the features before they are designated “stable”. To use Node.js without experimental features, use the --no-experimental-fetch command-line flag.

If you face any issue with the experimental features or any features on the Node.js, Node.js has a help repository where you can ask questions.

Other Topics

Other discussions include Async Hook Module, which is still in experimental mode, and the future of ESModules and CommonJs for Node.js.

With the community adoption of the new ESModule, and some existing libraries still using CommonJs, the support for both will be maintained by Node.js.

There was also a round up discussion of the WinterCG, a community group that provides a space for JavaScript runtimes to collaborate on API interoperability.

Conclusion

Among discussions and updates for Node.js Test Runner, Browser APIs in Node.js, and The Future of Node (Node Next10), the panelists also discussed OpenJS Foundation hosting the OpenJS World 2022 event with Collab Summit.

I recommend you watch the full video of the event on This Dot’s YouTube Channel.

Want to learn more about Node.js? Check out the This Dot blog for more Node.js content!