The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more โ
Top 23 Rust Parsing Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
untrusted
Safe, fast, zero-panic, zero-crashing, zero-allocation parsing of untrusted inputs in Rust. (by briansmith)
-
codeparser
Parse Wolfram Language source code as abstract syntax trees (ASTs) or concrete syntax trees (CSTs)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Lezer: A Parsing System for CodeMirror, Inspired by Tree-Sitter | news.ycombinator.com | 2024-03-24I learned from a google search that these days upstream tree-sitter provides WebAssembly bindings.
Source: https://github.com/tree-sitter/tree-sitter/tree/master/lib/b...
NPM: https://www.npmjs.com/package/web-tree-sitter
Download from the latest Github release: js file (https://github.com/tree-sitter/tree-sitter/releases/download...) and wasm file (https://github.com/tree-sitter/tree-sitter/releases/download...)
Would you consider using some libraries in your project? There are lots of good ones in the Rust ecosystem, and many of them are not part of any existing browsers.
For example:
- https://github.com/servo/html5ever (HTML parsing - note: this is used in Servo)
- https://github.com/parcel-bundler/lightningcss (CSS parsing)
- https://github.com/DioxusLabs/taffy (web layout)
- https://github.com/pop-os/cosmic-text (text layout and rendering)
Obviously you should be free to work on whatever you like, but just as a benchmark on the scope of your project: I spent ~6 months implementing just the CSS Grid algorithm in Taffy last year. An entire browser from literal scratch is probably a 10 year project for one person.
And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop
Project mention: Lezer: A Parsing System for CodeMirror, Inspired by Tree-Sitter | news.ycombinator.com | 2024-03-24I attempted to use this but was disheartened but the fact that it doesn't statically type node names. Tree Sitter doesn't either but it has much more of an excuse given that it targets C.
https://github.com/lezer-parser/lezer/issues/8
The dev seems mildly hostile to outside involvement too, so I moved on. These days I use Chumsky which is Rust rather than Typescript, but also way more awesome, if you can deal with the often incomprehensible compilation errors at least!
https://github.com/zesterer/chumsky
This is mighty impressive! I've been trying to get some motivation for the mythical rewrite of the proc macro in Logos, and this might just do it for me :D. I'll have a proper look later today and see if any of your findings have something that can be generalized. Also really surprised to see aarch64 doing better than x86_64 since the latter is what I've been optimizing for!
And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop
Project mention: All-in-one JMAP, IMAP and SMTP server written in Rust | news.ycombinator.com | 2023-07-17This is a new repository combining multiple older repositories. Development started on October 2021, here is the first commit: https://github.com/stalwartlabs/mail-parser/commit/c5ed27bb1...
[0]: https://github.com/tokay-lang/tokay
Project mention: The Story Continues: Announcing Version 14 of Wolfram Language and Mathematica | news.ycombinator.com | 2024-01-12
Project mention: Rust Faster-Pest โ PEG Parser โ 705% faster than Pest and 137% faster than Nom | news.ycombinator.com | 2023-07-18
Rust Parsing related posts
- Still no love for JPEG XL: Browser maker love-in snubs next-gen image format
- nom > regex
- Jasmine, A rust-like programming language that compiles to Java
- LightningCSS Benchmark
- Restoration of the pest3 work effort ๐ ยท pest-parser/pest ยท Discussion #885
- Letlang โ Roadblocks and how to overcome them - My programming language targeting Rust
- Is there a pydantic.BaseSettings equivalent in rust?
-
A note from our sponsor - WorkOS
workos.com | 25 Apr 2024
Index
What are some of the best open-source Parsing projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | tree-sitter | 16,450 |
2 | lightningcss | 5,949 |
3 | pest | 4,365 |
4 | chumsky | 3,316 |
5 | logos | 2,620 |
6 | rust-peg | 1,390 |
7 | pom | 484 |
8 | binjs-ref | 424 |
9 | rust-lexical | 279 |
10 | mail-parser | 267 |
11 | tokay | 230 |
12 | untrusted | 189 |
13 | html5gum | 145 |
14 | jsonpath | 117 |
15 | codeparser | 115 |
16 | meta | 88 |
17 | configure_me | 58 |
18 | dpar | 41 |
19 | faster-pest | 39 |
20 | peginator | 28 |
21 | untex | 27 |
22 | sgf-parse | 11 |
23 | panini | 6 |
Sponsored