chevrotain

Parser Building Toolkit for JavaScript

Github stars Tracking Chart

Join the chat at https://gitter.im/chevrotain-parser/Lobby
npm
CircleCI
styled with prettier
Commitizen friendly
dependentbot

Chevrotain

Introduction

Chevrotain is a blazing fast and feature rich Parser Building Toolkit for JavaScript.
It can be used to build parsers/compilers/interpreters for various use cases ranging from simple configuration files,
to full fledged programing languages.

A more in depth description of Chevrotain can be found in this great article on: Parsing in JavaScript: Tools and Libraries.

It is important to note that Chevrotain is NOT a parser generator. It solves the same kind of problems as a parser generator, just without any code generation. Chevrotain Grammars are pure code which can be created/debugged/edited
as any other pure code without requiring any new tools or processes.

TLDR

Installation

  • npm: npm install chevrotain
  • Browser:
    The npm package contains Chevrotain as concatenated and minified files ready for use in a browser.
    These can also be accessed directly via UNPKG in a script tag.
    • Latest:
      • https://unpkg.com/chevrotain/lib/chevrotain.js
      • https://unpkg.com/chevrotain/lib/chevrotain.min.js
    • Explicit version number:
      • https://unpkg.com/chevrotain@6.5.0/lib/chevrotain.js
      • https://unpkg.com/chevrotain@6.5.0/lib/chevrotain.min.js

Documentation & Resources

Dependencies

There is a single dependency to regexp-to-ast library.
This dependency is included in the bundled artifacts, for ease of consumption in browsers.

Compatibility

Chevrotain runs on any modern JavaScript ES5.1 runtime.
That includes any modern nodejs version, modern browsers and even IE11.

  • Uses UMD to work with common module loaders (browser global / amd / commonjs).

Contributions

Contributions are greatly appreciated.
See CONTRIBUTING.md for details.

Where used

Some interesting samples:

Main metrics

Overview
Name With OwnerChevrotain/chevrotain
Primary LanguageTypeScript
Program languageJavaScript (Language Count: 5)
Platform
License:Apache License 2.0
所有者活动
Created At2015-04-15 22:10:34
Pushed At2025-07-29 02:58:55
Last Commit At2025-04-26 15:09:06
Release Count169
Last Release Namev11.0.3 (Posted on 2023-08-15 02:04:40)
First Release Namev0.1.0 (Posted on 2015-05-30 22:53:15)
用户参与
Stargazers Count2.7k
Watchers Count29
Fork Count214
Commits Count2.4k
Has Issues Enabled
Issues Count816
Issue Open Count29
Pull Requests Count700
Pull Requests Open Count10
Pull Requests Close Count425
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private