Rust Parser

Open-source Rust projects categorized as Parser

Top 23 Rust Parser Projects

  • GitHub repo vector

    A high-performance, high-reliability observability data pipeline.

    Project mention: AWS releases forked Elasticsearch code. Announces new name: OpenSearc | news.ycombinator.com | 2021-04-12
  • GitHub repo nom

    Rust parser combinator framework

    Project mention: How can I make this code more "rusty" | reddit.com/r/rust | 2021-04-12

    I second /u/ejaszewski's recommendations, and would add: if you are going to be expanding this code, and adding more token types, there are parser/tokenizer crates such as nom that would be worth investigation. If not, hand-crafted code like this is fine. Nom is great, but overkill for such a simple job.

  • GitHub repo pest

    The Elegant Parser

    Project mention: Rust's Type System Is Turing-Complete | news.ycombinator.com | 2021-03-15

    I used the pest[1] library in Rust, it uses something a bit like an EBNF syntax to write the grammar and generate a PEG parser.

    [1] - https://pest.rs/

  • GitHub repo lalrpop

    LR(1) parser generator for Rust

    Project mention: Ditch regex for parser combinators, a Rust / nom step-by-step guide | reddit.com/r/programming | 2021-03-30

    Do you mean for C++ in particular, or just for any language? Because LALRPOP is very good if you're not specifically looking for C++.

  • GitHub repo rslint

    A (WIP) Extremely fast JavaScript and TypeScript linter and Rust crate (by rslint)

    Project mention: Why isn't differential dataflow more popular? | news.ycombinator.com | 2021-01-22

    [4]: https://github.com/rslint/rslint

  • GitHub repo rust-csv

    A CSV parser for Rust, with Serde support.

    Project mention: Data Manipulation: Pandas vs Rust | reddit.com/r/rust | 2021-02-28

    Yep, I'll try to have a look at the nesting PR https://github.com/BurntSushi/rust-csv/pull/197 tonight, don't want to be a bitch, and not helping ahah :)

  • GitHub repo combine

    A parser combinator library for Rust

  • GitHub repo rust-peg

    Parsing Expression Grammar (PEG) parser generator for Rust

    Project mention: Hey Rustaceans! Got an easy question? Ask here (5/2021)! | reddit.com/r/rust | 2021-02-01

    The peg crate has a resolved issue about this.

  • GitHub repo lol-html

    Low output latency streaming HTML parser/rewriter with CSS selector-based API

    Project mention: Problems with building a backend app in Rust in 2020 | reddit.com/r/rust | 2020-12-21

    Cloudflare has open sourced lol-html, a "Low output latency streaming HTML parser/rewriter with CSS selector-based API". Is that what you are looking for?

  • GitHub repo git-journal

    The Git Commit Message and Changelog Generation Framework :book:

  • GitHub repo json-rust

    JSON implementation in Rust

  • GitHub repo pom

    PEG parser combinators using operator overloading without macros.

  • GitHub repo chomp

    A fast monadic-style parser combinator designed to work on stable Rust.

  • GitHub repo sv-parser

    SystemVerilog parser library fully complient with IEEE 1800-2017

  • GitHub repo fast-float-rust

    Super-fast float parser in Rust

    Project mention: Eisel-Lemire Algorithm | news.ycombinator.com | 2021-02-07

    [4] https://github.com/aldanor/fast-float-rust/

  • GitHub repo oak

    A typed parser generator embedded in Rust code for Parsing Expression Grammars (by ptal)

  • GitHub repo bnf

    Parse BNF grammar definitions

  • GitHub repo pq

    a command-line Protobuf parser with Kafka support and JSON output (by sevagh)

    Project mention: Podman: A Daemonless Container Engine | news.ycombinator.com | 2021-02-11

    I have a Makefile for a Rust project which binds the local repository to a Docker volume, builds it in the container using muslrust, and then does a chown to change the target directory back from root ownership to my own user.

    All I had to do was 's/docker/podman/g' and remove the chown hack and it works fine: https://github.com/sevagh/pq/commit/6acf6d05a094ac2959567a9a...

    It understands Dockerfiles and can pull images from Dockerhub.

  • GitHub repo lib-ruby-parser

    Ruby parser written in Rust

    Project mention: Artichoke Ruby Architecture | news.ycombinator.com | 2021-02-12

    For now Artichoke leans on mruby’s parser, but I’m looking forward to using https://github.com/lib-ruby-parser/lib-ruby-parser which is a Rust port of MRI’s parse.y.

  • GitHub repo endbasic

    BASIC environment with a REPL, a web interface, and RPi support written in Rust

    Project mention: EndBASIC: A retro-looking BASIC environment, now with Raspberry Pi support | reddit.com/r/raspberry_pi | 2021-03-02

    Not a ton for now. Take a look at https://github.com/jmmv/endbasic/blob/master/std/README.md or open the web version in https://endbasic.jmmv.dev/ and type HELP.

  • GitHub repo mailparse

    Rust library to parse mail files

  • GitHub repo sax-wasm

    The first streamable, fixed memory XML, HTML, and JSX parser for WebAssembly.

    Project mention: Introducing check html links - no more bad links | dev.to | 2021-01-27

    I have been using sax-wasm in a few situations before and I knew it supported streaming. I knew that way it could be FAST 🤞!

  • GitHub repo queryst

    Rust query string parser with nesting support

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-04-12.

Index

What are some of the best open-source Parser projects in Rust? This list will help you:

Project Stars
1 vector 6,838
2 nom 5,033
3 pest 2,280
4 lalrpop 1,681
5 rslint 1,389
6 rust-csv 922
7 combine 910
8 rust-peg 855
9 lol-html 579
10 git-journal 457
11 json-rust 396
12 pom 310
13 chomp 204
14 sv-parser 171
15 fast-float-rust 161
16 oak 130
17 bnf 127
18 pq 122
19 lib-ruby-parser 115
20 endbasic 107
21 mailparse 103
22 sax-wasm 89
23 queryst 54