SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 C Parser Projects
-
StringZilla
Up to 100x faster strings for C, C++, CUDA, Python, Rust, Swift, JS, & Go, leveraging NEON, AVX2, AVX-512, SVE, GPGPU, & SWAR to accelerate search, hashing, sorting, edit distances, sketches, and memory ops 🦖
Usearch (Smaller & Faster Single-File Similarity Search & Clustering Engine for Vectors & 🔜 Texts): https://github.com/unum-cloud/usearch
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
Project mention: Show HN: Ferrite – Markdown editor in Rust with native Mermaid diagram rendering | news.ycombinator.com | 2026-01-10
This is cool. I was hoping to see progress coming from Zed (e.g. because Tree-sitter → https://github.com/tree-sitter-grammars/tree-sitter-markdown) but it's exciting to see this.
-
-
-
tiny-json
The tiny-json is a versatile and easy to use json parser in C suitable for embedded systems. It is fast, robust and portable.
-
-
-
-
I wrapped zsv, a SIMD-accelerated CSV parser written in C, into a Ruby gem. SIMD means it uses special CPU instructions to process multiple bytes at once - the same tech that makes video encoding and game physics fast.
-
Project mention: Specsmaxxing – On overcoming AI psychosis, and why I write specs in YAML | news.ycombinator.com | 2026-05-03
I agree, Cucumber works really well with LLMs.
> I use a mix of Markdown and Gherkin
Gherkin also has a Markdown based syntax that is not well known:
https://github.com/cucumber/gherkin/blob/main/MARKDOWN_WITH_...
I prefer that to the 'verbose' original syntax. MDG also renders nicely in code forges.
-
-
-
-
-
Project mention: MAML – a new configuration language (similar to JSON, YAML, and TOML) | news.ycombinator.com | 2025-10-12
In practice, there are still types, they are just validated by your application. I didn’t want Confetti itself to make assumptions. I wanted to give you the freedom to define your own custom types and keywords, like “on” and “off”, or even tri-states like “yes”, “no”, “maybe”.
The problem with mandatory keywords, like “true” and “false”, is they box you into the English language. And how many data types are baked in is arbitrary, for example, TOML has data types for date and time, but JSON does not [1]. Where do you draw the line? Confetti let’s you decide.
You might enjoy reading this take on the subject [2].
[1] https://toml.io/en/v1.0.0#offset-date-time
[2] https://github.com/madmurphy/libconfini/wiki/An-INI-critique...
-
pl0c
Self-hosting PL/0 to C compiler to teach basic compiler construction from a practical, hands-on perspective.
-
Have you looked into using a full MIME/mbox parser library, e.g. GMime [0] or MimeKit [1]? Both support parsing mbox files directly, and they should be able to handle the intricacies of parsing any messages/attachments you throw at them. Then you could write out the MIME representation of each message (including any attachments) into its own file and then check for new messages. That way you can be sure each “chunk” represents a single message in its entirety. Not sure if this is any better since your solution seems to work pretty well.
[0] https://github.com/jstedfast/gmime
[1] https://github.com/jstedfast/MimeKit
-
Project mention: Libwifi: An 802.11 frame parsing and generation library written in C | news.ycombinator.com | 2025-11-15
-
-
-
C Parser discussion
C Parser related posts
-
Calculator C Parser
-
grab VS coreutils - a user suggested alternative
2 projects | 11 Mar 2026 -
Ruby CSV Parsing 5-6x Faster
-
Show HN: ZSV – A fast, SIMD-based CSV parser and CLI toolkit
-
PackCC – Compact PEG Parser Generator for C
-
Removing global state from LLD, the LLVM linker
-
Mastering JSX Editing in Emacs with Tree-sitter
-
A note from our sponsor - SaaSHub
www.saashub.com | 15 Jun 2026
Index
What are some of the best open-source Parser projects in C? This list will help you:
| # | Project | Stars |
|---|---|---|
| 1 | StringZilla | 3,490 |
| 2 | parson | 1,451 |
| 3 | md4c | 1,365 |
| 4 | tree-sitter-markdown | 609 |
| 5 | lwesp | 556 |
| 6 | mini-c | 531 |
| 7 | tiny-json | 428 |
| 8 | link-grammar | 416 |
| 9 | packcc | 411 |
| 10 | jsonlite | 404 |
| 11 | zsv | 389 |
| 12 | gherkin | 351 |
| 13 | tree-sitter-bash | 311 |
| 14 | tree-sitter-ruby | 226 |
| 15 | tree-sitter-html | 207 |
| 16 | tree-sitter-haskell | 184 |
| 17 | libconfini | 181 |
| 18 | pl0c | 154 |
| 19 | gmime | 144 |
| 20 | libwifi | 138 |
| 21 | sqlite-createtable-parser | 137 |
| 22 | serd | 98 |
| 23 | stutter | 83 |