Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Tags
  3. Parser Generator

Parser Generator

37 projects

Showing 36 of 37 projects

tree-sitter
tree-sitterRust

A parser generator tool and incremental parsing library for building syntax trees in programming tools.

#parsing#c-library#incremental
Stars26.4k
Forks2.8k
Last commit22 hours ago
PEG.js
PEG.jsJavaScript

A parser generator for JavaScript that creates fast parsers with excellent error reporting.

#interpreter#language-processing#peg
Stars4.9k
Forks419
Last commit4 years ago
Kaitai Struct
Kaitai StructShell

A declarative language to generate binary data parsers in multiple programming languages from a single format description.

#data-serialization#csharp#protocol-analyser
Stars4.6k
Forks209
Last commit4 days ago
Jison
JisonJavaScript

A JavaScript parser generator with a Bison-compatible API for creating bottom-up parsers from JSON or Bison-style grammars.

#lexical-analysis#bottom-up-parsing#context-free-grammar
Stars4.4k
Forks453
Last commit3 years ago
nearley
nearleyJavaScript

A simple, fast, and powerful Earley parser toolkit for JavaScript that handles any BNF grammar.

#parsing#lexer-integration#ambiguous-grammar
Stars3.7k
Forks233
Last commit1 year ago
lalrpop
lalrpopRust

A Rust parser generator framework focused on usability, offering compact, readable grammars with LR(1) parsing.

#lr-parsing#language-implementation#macros
Stars3.5k
Forks311
Last commit1 month ago
Instaparse
InstaparseClojure

A Clojure/ClojureScript parser generator that turns EBNF or ABNF grammars into executable parsers for any context-free grammar.

#parsing#clojurescript#abnf
Stars2.8k
Forks153
Last commit2 years ago
rust-peg
rust-pegRust

A Parsing Expression Grammar (PEG) parser generator for Rust that builds recursive descent parsers from concise grammar definitions.

#parsing#rust-macro#recursive-descent-parser
Stars1.6k
Forks118
Last commit2 months ago
peg
pegGo

A Packrat parser generator for Parsing Expression Grammars (PEG) implemented in Go.

#packrat-parser#backtracking#compiler-tools
Stars1.1k
Forks126
Last commit2 months ago
gocc
goccGo

A Go compiler kit that generates lexers and parsers from BNF grammars with LR-1 conflict resolution.

#lr1-parsing#bnf#conflict-resolution
Stars663
Forks49
Last commit6 months ago
grmtools
grmtoolsRust

A suite of Rust libraries and binaries for parsing text using compile-time and run-time grammar definitions.

#parsing#generator#lr-parsing
Stars576
Forks42
Last commit2 days ago
Pegged
PeggedD

A Parsing Expression Grammar (PEG) generator for the D programming language, enabling compile-time and runtime parsing.

#parsing#d-language#metaprogramming
Stars550
Forks69
Last commit11 months ago
lady-deirdre
lady-deirdreRust

A Rust framework for building incremental compilers, interpreters, and language servers with real-time codebase synchronization.

#incremental#semantic-analysis#webassembly
Stars486
Forks15
Last commit5 months ago
CSLY
CSLYC#

An embeddable lexer and parser generator for C#/.NET, inspired by PLY, for building domain-specific languages.

#nuget#expression-parser#embedding
Stars416
Forks37
Last commit17 days ago
Treetop
TreetopRuby

A Ruby-based parsing expression grammar (PEG) DSL for building parsers and interpreters.

#interpreter#dsl#syntax-tree
Stars314
Forks26
Last commit8 months ago
SwiftParsec
SwiftParsecSwift

A parser combinator library for Swift that builds sophisticated parsers from simple components.

#parsing#expression-parsing#functional-programming
Stars228
Forks30
Last commit4 years ago
postagga
postaggaClojure

A Clojure/ClojureScript library for building self-contained natural language parsers using part-of-speech tagging and semantic rules.

#part-of-speech-tagging#bots#language-understanding
Stars162
Forks15
Last commit5 years ago
LPegLabel
LPegLabelC

A Lua PEG library extension that adds labeled failures for error handling and recovery in parsing expression grammars.

#parsing#syntax-error-recovery#peg
Stars151
Forks20
Last commit3 years ago
Pest
Pest

A curated collection of resources, projects, and tools for the pest parser generator in Rust.

#parsing#developer-tools#peg
Stars149
Forks12
Last commit22 hours ago
oak
oakRust

A typed parser generator embedded in Rust code for Parsing Expression Grammars (PEGs).

#rust-macro#type-inference#procedural-macro
Stars146
Forks15
Last commit1 year ago
ocaml-parsing
ocaml-parsingOCaml

A library and skeleton for writing OCaml parsers with beautiful error messages and minimal boilerplate.

#parsing#dune#boilerplate-reduction
Stars128
Forks12
Last commit2 years ago
LPegLJ
LPegLJLua

A pure LuaJIT implementation of LPeg v1.0, a PEG pattern matching library for Lua, with added left recursion support.

#luajit#ffi#memoization
Stars115
Forks10
Last commit4 years ago
can-dbc
can-dbcRust

A Rust parser for CAN DBC files using Pest grammar, enabling structured access to CAN network definitions.

#can-bus#pest-grammar#embedded
Stars107
Forks42
Last commit9 days ago
JSON Schema to Elm
JSON Schema to ElmElixir

Generates Elm types, JSON decoders, JSON encoders, and fuzz tests from JSON Schema draft v7 specifications.

#elixir-lang#json-encoder#elixir
Stars92
Forks12
Last commit1 month ago
Instaparse
InstaparseClojure

A ClojureScript port of Instaparse, enabling context-free grammar parsing with regex-like simplicity.

#parsing#clojurescript#abnf
Stars88
Forks4
Last commit9 years ago
cltk
cltkCrystal

A Crystal port of the Ruby Language Toolkit for creating programming languages with lexer and parser generators.

#programming-language#compiler-construction#crystal-lang
Stars72
Forks8
Last commit3 years ago
neotomex
neotomexElixir

A PEG parser and transformer with a pleasant Elixir DSL for building grammars.

#elixir#metaprogramming#dsl
Stars69
Forks10
Last commit4 years ago
grappa
grappaJava

A Java library for writing parsers at runtime without preprocessing or a separate DSL.

#no-preprocessing#dsl-free#java
Stars67
Forks11
Last commit10 years ago
alexa
alexaCommon Lisp

A Common Lisp lexical analyzer generator that defines a domain-specific language within your Lisp program, eliminating the need for external tools.

#language-engineering#lexical-analysis#regex
Stars64
Forks6
Last commit1 year ago
abnf_parsec
abnf_parsecElixir

An Elixir library that parses ABNF grammar definitions and generates NimbleParsec parser combinators.

#parsing#elixir#combinator-parsing
Stars57
Forks4
Last commit2 months ago
ctpg
ctpgD

A compile-time parser generator for the D programming language that generates parsers during compilation.

#parsing#d-language#metaprogramming
Stars45
Forks2
Last commit11 years ago
pest-fmt
pest-fmtRust

A formatter tool for Pest grammar files that automatically formats .pest files to a consistent style.

#developer-tools#code-formatter#cli-tool
Stars27
Forks6
Last commit2 years ago
xerial
xerialScala

A collection of Scala utilities for data management, including logging, benchmarking, parsing, and object schema inspection.

#type-inspection#command-line-parser#logging
Stars19
Forks2
Last commit9 years ago
dunnart
dunnartD

An enhanced LALR(1) parser generator for the D programming language with boolean predicate conflict resolution and built-in lexical analysis.

#programming-language#d-language#compiler-construction
Stars14
Forks1
Last commit9 years ago
yaml-peg
yaml-pegRust

A PEG-based YAML parser implemented in Rust using the pest parsing library.

#parsing#hacktoberfest#yaml
Stars10
Forks1
Last commit4 years ago
rebar3_neotoma_plugin
rebar3_neotoma_pluginErlang

A Rebar3 plugin that compiles neotoma Parser Expression Grammar (PEG) files into Erlang modules.

#neotoma#compiler-plugin#peg
Stars2
Forks11
Last commit10 years ago
Page 1 of 2Next

Related Tags

#Parsing14#Grammar13#Compiler Tools12#Parsing Expression Grammar11#Rust9#Parser8#Peg8#Syntax Analysis6#Dsl5#Context Free Grammar4#Javascript4#Code Generation4
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub