You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Futago-za Ryuu b3329e626e Integrate yarn 6 years ago
.github Clarify templates 7 years ago
bin Restore orignal output on generation fail 6 years ago
docs Make the default tracer an optional feature 6 years ago
examples Merge pull request #490 from chearon/css-num-fix 7 years ago
lib Make the default tracer an optional feature 6 years ago
src Relay parser opts from peg.generate (#553) 7 years ago
test Provide context to parser (#517) 7 years ago
.babelrc Moved Babel options to .babelrc 7 years ago
.eslintrc.js Update code format and style 7 years ago
.gitattributes Ensure bin/*.js files use LF instead of CRLF 7 years ago
.gitignore Integrate yarn 6 years ago
.travis.yml Integrate yarn 6 years ago Update 8 years ago
LICENSE Updated maintainer #503 7 years ago Move documentation 7 years ago
gulpfile.js Gulp 4 6 years ago
package.json Gulp 4 6 years ago
yarn.lock Integrate yarn 6 years ago

ci coverage release dev bower license

PEG.js is a simple parser generator for JavaScript that produces fast parsers with excellent error reporting. You can use it to process complex data or computer languages and build transformers, interpreters, compilers and other tools easily.

PEG.js is still very much work in progress. There are no compatibility guarantees until version 1.0


  • Simple and expressive grammar syntax
  • Integrates both lexical and syntactical analysis
  • Parsers have excellent error reporting out of the box
  • Based on parsing expression grammar formalism - more powerful than traditional LL(k) and LR(k) parsers
  • Usable from your browser, from the command line, or via JavaScript API



Released under the MIT License.

Copyright (c) 2010-2016 David Majda
Copyright (c) 2017+ Futago-za Ryuu