Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Chevrotain/chevrotain

Open more actions menu

Repository files navigation

Discussions npm npm Continuous Integration styled with prettier Commitizen friendly

Chevrotain

TLDR

Introduction

Chevrotain is a blazing fast and feature rich Parser Building Toolkit for JavaScript with built-in support for LL(K). Grammars and 3rd party plugin for LL(*) grammars. It can be used to build parsers/compilers/interpreters for various use cases ranging from simple configuration files, to full-fledged programming languages.

Grammars are written as pure JavaScript sources without a code generation phase,

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

Installation

  • npm: npm install chevrotain
  • Browser ESM bundled versions: These can be downloaded directly via UNPKG or other NPM cdn services, e.g.:
    • Latest:
      • https://unpkg.com/chevrotain/lib/chevrotain.mjs
      • https://unpkg.com/chevrotain/lib/chevrotain.min.mjs
    • Explicit version number:
      • https://unpkg.com/chevrotain@11.0.3/lib/chevrotain.mjs
      • https://unpkg.com/chevrotain@11.0.3/lib/chevrotain.min.mjs

Documentation & Resources

Compatibility

Chevrotain will run on any modern JavaScript ES2015 runtime. That includes nodejs maintenance/active/current version, modern major browsers, but not legacy ES5.1 runtimes such as IE11.

Contributions

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

Where used

A small-curated list:

  1. HyperFormula

    • HyperFormula is an open source, spreadsheet-like calculation engine
    • source
  2. Langium

    • Langium is a language engineering tool with built-in support for the Language Server Protocol.
  3. Prettier-Java

    • A Prettier Plugin for Java
    • source
  4. JHipster Domain Language

    • The JDL is a JHipster-specific domain language where you can describe all your applications, deployments, entities and their relationships in a single file (or more than one) with a user-friendly syntax.
    • source
  5. Argdown

    • Argdown is a simple syntax for analyzing complex argumentation.
    • source
Morty Proxy This is a proxified and sanitized view of the page, visit original site.