Browse free open source Parser Generators and projects for Windows and Linux below. Use the toggles on the left to filter open source Parser Generators by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Turn more customers into advocates. Icon
    Turn more customers into advocates.

    Fight skyrocketing paid media costs by turning your customers into a primary vehicle for acquisition, awareness, and activation with Extole.

    The platform's advanced capabilities ensure companies get the most out of their referral programs. Leverage custom events, profiles, and attributes to enable dynamic, audience-specific referral experiences. Use first-party data to tailor customer segment messaging, rewards, and engagement strategies. Use our flexible APIs to build management capabilities and consumer experiences–headlessly or hybrid. We have all the tools you need to build scalable, secure, and high-performing referral programs.
    Learn More
  • 1
    RapidJSON

    RapidJSON

    A fast JSON parser/generator for C++ with both SAX/DOM style API

    RapidJSON is a JSON parser and generator for C++. It was inspired by RapidXml. RapidJSON is small but complete. It supports both SAX and DOM style API. The SAX parser is only a half thousand lines of code. RapidJSON is fast. Its performance can be comparable to strlen(). It also optionally supports SSE2/SSE4.2 for acceleration. RapidJSON is self-contained and header-only. It does not depend on external libraries such as BOOST. It even does not depend on STL. RapidJSON is memory-friendly. Each JSON value occupies exactly 16 bytes for most 32/64-bit machines (excluding text string). By default it uses a fast memory allocator, and the parser allocates memory compactly during parsing. RapidJSON is Unicode-friendly. It supports UTF-8, UTF-16, UTF-32 (LE & BE), and their detection, validation and transcoding internally. For example, you can read a UTF-8 file and let RapidJSON transcode the JSON strings into UTF-16 in the DOM. It also supports surrogates and "\u0000" (null character).
    Downloads: 6 This Week
    Last Update:
    See Project
  • 2

    C#Prolog

    C#Prolog -- A Prolog interpreter written in managed C#

    C#Prolog -- A Prolog interpreter written in C#. Can easily be integrated in C# programs. Characteristics: reliable and fairly fast interpreter, command line interface, Windows-interface, builtin DCG, XML- and JSON-predicates, SQL-predicates, extendible.
    Leader badge
    Downloads: 41 This Week
    Last Update:
    See Project
  • 3
    Chevrotain

    Chevrotain

    Parser Building Toolkit for JavaScript

    Chevrotain is a powerful and fast parser-building toolkit for JavaScript. It supports the construction of LL(k) parsers and is suitable for building interpreters, compilers, and DSLs.​
    Downloads: 5 This Week
    Last Update:
    See Project
  • 4
    tree-sitter

    tree-sitter

    An incremental parsing system for programming tools

    Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. General enough to parse any programming language. Fast enough to parse on every keystroke in a text editor. Robust enough to provide useful results even in the presence of syntax errors. Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application. All of Tree-sitter’s parsing functionality is exposed through C APIs. Applications written in higher-level languages can use Tree-sitter via binding libraries like node-tree-sitter or the tree-sitter rust crate, which have their own documentation. To build the library on a POSIX system, just run make in the Tree-sitter directory. This will create a static library called libtree-sitter.a as well as dynamic libraries.
    Downloads: 5 This Week
    Last Update:
    See Project
  • FusionAuth: Authentication and User Management Software Icon
    FusionAuth: Authentication and User Management Software

    Offer your users flexible authentication options, including passwords, passwordless, single sign-on (SSO), and multi-factor authentication (MFA).

    FusionAuth adds login, registration, SSO, MFA, and a bazillion other features to your app in days - not months.
    Learn More
  • 5
    Portable Executable Parser

    Portable Executable Parser

    lightweight Go package to parse, analyze and extract metadata

    Saferwall PE is a lightweight Go package for parsing, analyzing, and extracting metadata from Portable Executable (PE) binaries. Designed with malware analysis in mind, it is robust against malformed PE files and provides detailed insights into executable structures.​
    Downloads: 4 This Week
    Last Update:
    See Project
  • 6
    body-parser

    body-parser

    Node.js body parsing middleware

    Node.js body parsing middleware. Parse incoming request bodies in a middleware before your handlers, available under the req.body property. As req.body's shape is based on user-controlled input, all properties and values in this object are untrusted and should be validated before trusting. For example, req.body.foo.toString() may fail in multiple ways, for example the foo property may not be there or may not be a string, and toString may not be a function and instead a string or other user input. The bodyParser object exposes various factories to create middlewares. All middlewares will populate the req.body property with the parsed body when the Content-Type request header matches the type option, or an empty object ({}) if there was no body to parse, the Content-Type was not matched, or an error occurred.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    Koopa (COBOL) Parser Generator
    This project has moved to GitHub ! The version here at SourceForge will remain for historic purpose. Koopa is a parser generator, made for COBOL. It can handle source files in isolation (no preprocessing required) and doesn't mind the presence of CICS/SQL fragments. The grammar is easily extensible in a way which minimizes the impact on the overall code.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 8
    getoptions

    getoptions

    An elegant option/argument parser for shell scripts

    getoptions is a POSIX-compliant shell script library designed to simplify command-line option parsing. It provides an elegant and extensible way to handle both short and long options in shell scripts without relying on external dependencies. ​
    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    ANTLR

    ANTLR

    Parser generator to read, process, or translate structured text

    ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files. It's widely used to build languages, tools, and frameworks. From a grammar, ANTLR generates a parser that can build and walk parse trees. It’s widely used in academia and industry to build all sorts of languages, tools, and frameworks. Twitter search uses ANTLR for query parsing, with over 2 billion queries a day. The languages for Hive and Pig, the data warehouse and analysis systems for Hadoop, both use ANTLR. Lex Machina uses ANTLR for information extraction from legal texts. Oracle uses ANTLR within SQL Developer IDE and their migration tools. NetBeans IDE parses C++ with ANTLR. The HQL language in the Hibernate object-relational mapping framework is built with ANTLR.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Automated RMM Tools | RMM Software Icon
    Automated RMM Tools | RMM Software

    Proactively monitor, manage, and support client networks with ConnectWise Automate

    Out-of-the-box scripts. Around-the-clock monitoring. Unmatched automation capabilities. Start doing more with less and exceed service delivery expectations.
    Learn More
  • 10
    JSON-Machine

    JSON-Machine

    Efficient, easy-to-use, and fast PHP JSON stream parser

    json-machine is an efficient and easy-to-use PHP JSON stream parser. It enables processing of large JSON files or streams without loading the entire content into memory, making it suitable for memory-constrained environments.​
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11
    League CommonMark

    League CommonMark

    Highly-extensible PHP Markdown parser

    CommonMark is a PHP library that implements the CommonMark Markdown specification, allowing developers to convert Markdown into HTML. It provides a robust and extensible parser with support for additional syntax and extensions. The library is designed to be efficient and standards-compliant, making it ideal for applications that require consistent and reliable Markdown processing.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12
    PSD.js

    PSD.js

    A Photoshop PSD file parser for NodeJS and browsers

    psd.js is an open-source JavaScript library (CoffeeScript/JS) for reading and parsing Adobe Photoshop PSD files in both Node.js and web browsers. It reconstructs the document into a DOM-like tree with layers, masks, text metadata, vector information, and pixel data. It enables developers to traverse layer structures, extract flattened or individual image buffers, and integrate PSD assets programmatically in web or backend applications.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    React-Native-Parsed-Text

    React-Native-Parsed-Text

    Parse text and make them into multiple React Native Text elements

    react-native-parsed-text is a React Native component that enables parsing and styling of substrings within a text block. It allows developers to identify patterns like URLs, phone numbers, or emails and apply custom styles or actions to them.​
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    MLton

    MLton

    A whole-program optimizing compiler for Standard ML

    MLton is a whole-program optimizing compiler for Standard ML. MLton generates small executables with excellent runtime performance, utilizing untagged and unboxed native integers, reals, and words, unboxed native arrays, fast arbitrary-precision arithmetic based on GnuMP, and multiple code generation and garbage collection strategies. In addition, MLton provides a feature rich Standard ML programming environment, with full support for SML97 as given in The Definition of Standard ML (Revised), a number of useful language extensions, a complete implementation of the Standard ML Basis Library, various useful libraries, a simple and fast C foreign function interface, the ML Basis system for programming with source libraries, and tools such as a lexer generator, a parser generator, and a profiler.
    Leader badge
    Downloads: 35 This Week
    Last Update:
    See Project
  • 15
    Argh

    Argh

    Rust derive-based argument parsing optimized for code size

    argh is a tiny, pragmatic command-line argument parsing library that favors simple, readable code over elaborate configuration. It’s designed for the case where you just want to declare a few flags, accept some positional arguments, and print helpful usage text without wiring up a heavy framework. The API is intentionally compact so you can parse arguments inline near main() and map them straight into native types. It supports short and long options, boolean switches, and key–value flags while keeping error messages and help output understandable for end users. Subcommands can be modeled without much boilerplate, letting you structure larger CLIs while keeping each command self-contained. The overall feel is “get out of your way”: minimal setup, zero magic, and a straightforward path from argv to validated inputs.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Logos

    Logos

    Create ridiculously fast Lexers

    Logos is a lexer generator for Rust, designed to create fast and efficient lexers with minimal code. It leverages Rust's procedural macros to define token patterns, streamlining the process of lexical analysis.​
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    Parser for Rust source code

    Parser for Rust source code

    Parser for Rust source code

    Parser for Rust source code is a major Rust crate for parsing Rust source code (token streams) into a syntax tree (AST) that procedural macros can inspect or transform. The primary target is macro authors: you can parse TokenStreams into syn::File, syn::Item, syn::Expr, syn::Type, etc. It offers rich data structures, fine-grained parsing, span tracking (for error reporting), traversal and mutation APIs (visit, fold, visit_mut), printing back to tokens, and strong feature-gating so you only compile what you need. The documentation emphasises that while the crate is geared for procedural macros (and custom derives), some of the APIs may be of more general use. Using syn you can effectively write code that analyzes or generates Rust code at compile time.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Rust-Peg

    Rust-Peg

    Parsing Expression Grammar (PEG) parser generator for Rust

    rust-peg is a Parsing Expression Grammar (PEG) parser generator for Rust. It allows developers to define grammars in a concise syntax and generates efficient parsers, facilitating the creation of domain-specific languages and interpreters.​
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    fastjson

    fastjson

    A fast JSON parser/generator for Java

    Fastjson is a Java library that can be used to quickly convert Java Objects into their JSON representation or convert JSON strings to their equivalent Java object. Based on benchmarks it provides the best performance in both server side and Android client, and can work with arbitrary Java objects, even those pre-existing objects of which you do not have the source code. Fastjson provides a simple conversion method to turn Java objects to JSON and vice versa, with extensive support of Java Generics and arbitrarily complex objects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20

    COBOL copybook to XML converter

    Converts cobol copybooks to Xml/Java objects

    CB2XML (CopyBook to XML) is a COBOL CopyBook to XML converter written in Java and based on the SableCC parser generator. This project includes utilities to convert an XML instance file into its COBOL copybook equivalent string buffer and vice versa. Source is now available in GitHub: https://github.com/bmTas/cb2xml
    Leader badge
    Downloads: 8 This Week
    Last Update:
    See Project
  • 21
    The LALR parser generator (LPG) is a tool for developing scanners and parsers written in Java, C++ or C. Input is specified by BNF rules. LPG supports backtracking (to resolve ambiguity), automatic AST generation and grammar inheritance.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 22
    SableCC is a parser generator which generates object-oriented frameworks for building compilers, interpreters and other text parsers. SableCC keeps a clean separation between machine and user code which leads to a shorter development cycle.
    Leader badge
    Downloads: 10 This Week
    Last Update:
    See Project
  • 23
    JSON Parser

    JSON Parser

    JSON Parser written in C that outputs JSON into D-List list objects

    JSON parser is a highly efficient JSON data decoder written in C, that parses JSON data into a form that is very easy to use from within C code. You only need to include the json-parser.h file in your source code. If your project does not already incorporate D-List, you will also need to include dlist.h The JSON parser package also includes a JSON validator that does not parse or create resources, but allows the caller to validate JSON data from unknown sources, prior to any parsing attempts. The JSON data is returned to the caller as a set of hierarchical D-List list objects, that make the data very easy to manage, sort, search or use, and easy to remove when done. Package includes a JSON textural generator which will create JSON grammar data blocks from hierarchical D-List representations of JSON data. The package also includes a variety of support functions to allow C code to easily find, add, and modify JSON values and members in D-List hierarchical structures.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 24
    Python EBNF parser generator for use with mx.TextTools
    Downloads: 4 This Week
    Last Update:
    See Project
  • 25
    Spirit is an object oriented recursive descent parser generator framework implemented using template meta-programming techniques.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next