the acorn javascript parser, preloaded with plugins for syntax parity with recent node versions

Usage no npm install needed!

<script type="module">
  import acornNode from '';



Acorn preloaded with plugins for syntax parity with recent Node versions.

It also includes versions of the plugins compiled with Bublé, so they can be run on old Node versions (0.6 and up).

npm travis standard


npm install acorn-node


var acorn = require('acorn-node')

The API is the same as acorn, but the following syntax features are enabled by default:

  • Bigint syntax 10n
  • Numeric separators syntax 10_000
  • Public and private class instance fields
  • Public and private class static fields
  • Dynamic import()
  • The import.meta property
  • export * as ns from syntax

And the following options have different defaults from acorn, to match Node modules:

  • ecmaVersion: 2019
  • allowHashBang: true
  • allowReturnOutsideFunction: true
var walk = require('acorn-node/walk')

The Acorn syntax tree walker. Comes preconfigured for the syntax plugins if necessary. See the acorn documentation for details.


The files in the repo root and the ./test folder are licensed as Apache-2.0.

The files in lib/ are generated from other packages: