Open-source parser software
2737 open-source libraries, tools and applications tagged parser, ranked by how closely parser is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
2737 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| LeetaoGoooo/RSSAid RSSAid is a Flutter-based mobile app that complements RSSHub by helping users discover and subscribe to RSS feeds from websites, similar to… | 85 | 1353 | active |
| nem0/OpenFBX OpenFBX is a lightweight open source FBX file importer written in C, capable of loading geometry, skeletons, animations, blend shapes, mate… | 66 | 1353 | active |
| pomsky-lang/pomsky Pomsky is a modern, portable regular expression language that cross-compiles to standard regexes for engines like PCRE, JavaScript, Python,… | 57 | 1353 | active |
| silentmatt/expr-eval expr-eval is a JavaScript library that parses and evaluates mathematical expressions, designed as a safer, math-oriented alternative to Jav… | 32 | 1353 | stable |
| unslop-xyz/noodles Noodles is a Python CLI tool that builds function call graphs from codebases using tree-sitter AST parsing and renders them as interactive … | 44 | 1352 | active |
| nmdias/FeedKit FeedKit is a Swift library for parsing and generating RSS, Atom, and JSON Feed formats. It supports common namespaces like Dublin Core, Med… | 93 | 1351 | active |
| twostraws/Sitrep Sitrep is a source code analyzer for Swift projects that reports high-level code statistics such as type counts, lines of code, longest fil… | 75 | 1351 | active |
| natasha/natasha Natasha is a Python library that solves basic NLP tasks for the Russian language, including tokenization, sentence segmentation, morphology… | 63 | 1351 | active |
| webtoon/psd A fast, zero-dependency TypeScript parser for Adobe Photoshop PSD/PSB files that runs in web browsers and Node.js. It extracts layer inform… | 23 | 1351 | active |
| segment-any-text/wtpsplit wtpsplit is a Python toolkit for segmenting text into sentences or other semantic units using the SaT and WtP deep learning models. It prov… | 93 | 1347 | active |
| vgteam/vg vg is a C++ toolkit for building, manipulating, and analyzing genome variation graphs (pangenome graphs). It provides succinct graph data s… | 92 | 1343 | active |
| run-liyi/wechatpay An Electron-based desktop application that parses exported WeChat Pay bill Excel files and visualizes personal spending with charts, catego… | 48 | 1343 | active |
| gherkins/regexpbuilderphp A PHP library for building regular expressions through chained, human-readable methods instead of raw regex syntax. It is a PHP port of reg… | 50 | 1342 | active |
| alan-turing-institute/CleverCSV CleverCSV is a Python package that provides a drop-in replacement for the built-in csv module with improved dialect detection for messy CSV… | 75 | 1341 | active |
| bevry/cson CSON is a CoffeeScript-Object-Notation parser and serializer for Node.js, offering a JSON-like data format with CoffeeScript syntax conveni… | 75 | 1340 | active |
| omnidan/node-emoji node-emoji is a Node.js library providing friendly emoji lookups and parsing utilities, built on top of emojilib and skin-tone. It supports… | 23 | 1340 | active |
| GumTreeDiff/gumtree GumTree is a syntax-aware code differencing tool that computes diffs on abstract syntax trees rather than raw text. It aligns edit actions … | 95 | 1339 | active |
| json-parser/json-parser A very low footprint DOM-style JSON parser written in portable ANSI C (C89). It ships as just json.c and json.h with no dependencies and a … | 75 | 1339 | stable |
| caksoylar/keymap-drawer A Python module and CLI tool that parses QMK and ZMK keyboard keymap files and renders them as SVG diagrams, with support for layers, hold-… | 80 | 1338 | active |
| ronmamo/reflections A Java library that scans and indexes classpath metadata at runtime, enabling reverse transitive queries over the type system. It lets you … | 23 | 4760 | maintenance |
| Seq Superpower is a C# parser combinator library, based on Sprache, for building declarative text and token-driven parsers embedded directly in… | 71 | 1336 | active |
| zoni/obsidian-export A Rust library and CLI program that exports an Obsidian vault to regular Markdown (CommonMark), converting [[note]]-style references and ![… | 69 | 1336 | active |
| obspy/obspy ObsPy is an open-source Python framework for processing seismological data, providing file format parsers, data center web service clients,… | 84 | 1335 | active |
| wmbusmeters A C++ daemon that acquires utility meter readings from wired m-bus or wireless wM-Bus (OMS) compatible meters using hardware dongles, rtl-s… | 84 | 1335 | active |
| mooz/js2-mode js2-mode is an improved JavaScript major mode for GNU Emacs featuring a full JavaScript parser (AST) for accurate syntax highlighting and e… | 69 | 1335 | stable |
| unjs/citty Citty is a zero-dependency TypeScript library for building elegant command-line interfaces on Node.js. It provides typed command definition… | 83 | 1334 | active |
| gosimple/slug A Go library that generates URL-friendly slugs from Unicode strings, with transliteration to ASCII and support for multiple languages. It g… | 23 | 1334 | stable |
| qicosmos/iguana iguana is a C++17/C++20 header-only serialization engine built on compile-time reflection, supporting JSON, XML, YAML, and binary/protobuf … | 81 | 1333 | active |
| jmerle/competitive-companion A browser extension that parses competitive programming problems from online judges like Codeforces, AtCoder, and Kattis. It extracts test … | 90 | 1332 | active |
| halaxa/json-machine JSON Machine is a PHP library for memory-efficient streaming parsing of large JSON files and streams. It provides a simple iterator-based A… | 68 | 1332 | stable |
| cfig/Android_boot_image_editor A Gradle-based Java tool for unpacking, editing, and repacking Android boot images such as boot.img, vendor_boot.img, recovery.img, vbmeta.… | 62 | 1332 | active |
| marcoroth/herb Herb is an HTML-aware ERB toolchain built around a fast C parser that produces detailed syntax trees for HTML+ERB templates. It ships devel… | 92 | 1330 | active |
| py2many/py2many py2many is a Python-based source-to-source transpiler that converts Python code into multiple statically-typed languages including Rust, C+… | 84 | 1330 | active |
| music-metadata A TypeScript library for parsing metadata from audio and video media files, extracting format, tag, and duration information. It supports f… | 98 | 1329 | active |
| mitsuhiko/similar Similar is a dependency-free Rust crate implementing multiple diffing algorithms (Myers, patience, histogram, LCS) with high-level interfac… | 75 | 1329 | stable |
| deanmalmgren/textract A Python library that extracts text from virtually any document format (PDF, DOCX, PPTX, HTML, images, and more) through a simple unified i… | 93 | 4727 | maintenance |
| platomav/MEAnalyzer ME Analyzer is a Python command-line tool that parses and identifies Intel Engine (CSME, TXE, SPS, GSC) and Graphics firmware images, repor… | 94 | 1327 | active |
| MagicStack/httptools httptools is a Python binding for Node.js's fast HTTP parsers (llhttp and http-parser), providing request/response parser classes and a URL… | 90 | 1327 | stable |
| stleary/JSON-java JSON-java (org.) is a reference implementation of a JSON package in Java, providing parsers, encoders, and decoders for JSON documents. It … | 87 | 4720 | maintenance |
| mapbox/togeojson A tiny, dependency-free JavaScript library that converts KML and GPX documents into GeoJSON, usable in both browsers and Node.js. It also s… | 59 | 1326 | stable |
| brofield/simpleini SimpleIni is a cross-platform, header-only C++ library for reading and writing INI-style configuration files. It supports ASCII, MBCS, and … | 92 | 1325 | stable |
| shift-labs-ai/markit A Rust-based tool that converts documents, data files, web pages, and media into Markdown, usable both as a CLI and a library. It supports … | 75 | 1325 | active |
| SSShooter/ebook-to-mindmap A browser-based AI application that parses EPUB and PDF ebooks and converts them into chapter summaries, per-chapter mind maps, or a single… | 68 | 1325 | active |
| clojure-lsp clojure-lsp is a Language Server Protocol (LSP) implementation for Clojure and ClojureScript, providing static analysis-based editing featu… | 94 | 1324 | active |
| cinemagoer/cinemagoer Cinemagoer (formerly IMDbPY) is a Python package for retrieving and managing IMDb data about movies, people, characters, and companies from… | 92 | 1324 | active |
| Seldaek/jsonlint A PHP library that validates and parses JSON with detailed, human-readable error messages pointing at the exact line and expected tokens. I… | 90 | 1324 | stable |
| lithammer/fuzzysearch A tiny and fast fuzzy string matching library for Go, inspired by bevacqua/fuzzysearch. It supports matching, ranking via Levenshtein dista… | 68 | 1323 | stable |
| HAMA (Plex Anime Metadata) HAMA is a Plex metadata agent plugin that fetches anime series and movie metadata from AniDB, TVDB, and TMDB, using ScudLee's XML mappings … | 66 | 1323 | active |
| muellan/clipp clipp is a single-header, MIT-licensed C++11/14/17 library for expressive command line argument parsing. It supports options, positional va… | 23 | 1323 | stable |
| marcrobledo/savegame-editors A collection of browser-based (HTML5/JavaScript) savegame editors for various Nintendo console games, allowing users to modify values in ga… | 65 | 1321 | active |
| BigBadaboom/androidsvg AndroidSVG is a parser and renderer for SVG files on Android, supporting nearly all static visual elements of SVG 1.1 and SVG 1.2 Tiny (exc… | 30 | 1321 | stable |
| sirthias/parboiled parboiled is a mixed Java/Scala library for lightweight, easy-to-use parsing of arbitrary text based on Parsing Expression Grammars (PEGs).… | 77 | 1319 | stable |
| brucemiller/LaTeXML LaTeXML is a Perl-based TeX and LaTeX to XML/HTML/MathML/ePub converter that emulates TeX to transform LaTeX sources into structured XML, t… | 66 | 1319 | active |
| sulab999/AppMessenger AppMessenger is a free cross-platform (Windows/Mac/Linux, Java-based) GUI tool for analyzing mobile application packages including APK (And… | 91 | 1317 | active |
| eliaskosunen/scnlib scnlib is a modern C++ library for text parsing, serving as a type-safe and faster replacement for scanf and std::istream. It is the invers… | 78 | 1317 | stable |
| yanhaijing/template.js template.js is a simple JavaScript template engine supporting parsing, compilation, and rendering with native JS syntax. It offers precompi… | 34 | 1317 | active |
| sist2app/sist2 sist2 is a fast, multi-threaded file system indexer that extracts text, metadata, and thumbnails from common file types, with OCR support v… | 95 | 1312 | active |
| skvadrik/re2c re2c is a free and open-source lexer generator that compiles regular expressions into fast, direct-coded lexers for many languages includin… | 91 | 1312 | stable |
| svg-net/SVG SVG.NET is a C# library for reading, writing, and rendering SVG 1.1 images in .NET applications. It targets .NET Standard 2.0 and is distri… | 70 | 1312 | active |
| cased/kit kit is a Python toolkit for code intelligence and context engineering, providing codebase mapping, tree-sitter-based symbol extraction, gre… | 52 | 1311 | active |
| samg/diffy A Ruby gem that provides a convenient interface for generating diffs between two strings or files. It wraps the battle-tested Unix diff too… | 40 | 1307 | stable |
| domainaware/parsedmarc parsedmarc is a Python module and CLI utility for parsing aggregate (rua), failure (ruf), and SMTP TLS reporting email authentication repor… | 94 | 1306 | active |
| JuliaStrings/utf8proc utf8proc is a small, clean C library providing Unicode normalization, case-folding, grapheme segmentation, and other operations for UTF-8 e… | 94 | 1305 | stable |
| haskell/aeson aeson is a fast, widely used Haskell library for parsing, encoding, and manipulating JSON data. It provides typeclass-based conversion betw… | 76 | 1305 | stable |
| micromatch/picomatch Picomatch is a blazing fast, dependency-free JavaScript glob matcher supporting standard and extended Bash glob features like braces, extgl… | 96 | 1303 | stable |
| x2bool/xlite XLite is a SQLite extension written in Rust that exposes Excel (.xlsx, .xls) and Open Document (.ods) spreadsheets as SQLite virtual tables… | 24 | 1303 | active |
| yasserg/crawler4j crawler4j is an open-source web crawler library for Java that provides a simple interface for building multi-threaded web crawlers in minut… | 23 | 4619 | maintenance |
| ToruNiina/toml11 toml11 is a feature-rich, header-only TOML parsing and serialization library for C++11/14/17/20. It fully complies with the TOML v1.0.0 spe… | 51 | 1302 | stable |
| unjs/ufo ufo is a lightweight TypeScript library providing human-friendly URL utilities for parsing, joining, normalizing, and encoding URLs. It is … | 85 | 1301 | active |
| BurntSushi/aho-corasick A Rust library implementing the Aho-Corasick algorithm for fast simultaneous searching of many patterns, using a finite state machine with … | 72 | 1301 | stable |
| JoosepAlviste/nvim-ts-context-commentstring A Neovim plugin that sets the commentstring option dynamically based on the cursor location using tree-sitter queries. It handles files wit… | 62 | 1301 | active |
| xvrh/lottie-flutter A pure Dart Lottie player for Flutter that parses Adobe After Effects animations exported as JSON (via Bodymovin) and renders them natively… | 96 | 1300 | active |
| VirusTotal/yara-x YARA-X is a pure Rust rewrite of YARA, the pattern matching swiss knife for malware researchers, designed to be faster, safer, and more use… | 98 | 1299 | stable |
| microsoft/gctoolkit GCToolKit is a set of Java libraries for parsing HotSpot JVM garbage collection log files into discrete events. It provides an API for aggr… | 78 | 1299 | active |
| optonaut/ActiveLabel.swift ActiveLabel is a Swift UILabel drop-in replacement that detects and makes interactive Hashtags, Mentions, URLs, Emails, and custom regex pa… | 23 | 4603 | maintenance |
| networktocode/ntc-templates A collection of TextFSM templates for parsing CLI show command output from network devices, plus a Python wrapper around TextFSM's CliTable… | 92 | 1298 | active |
| pillarjs/multiparty multiparty is a Node.js library for parsing HTTP requests with content-type multipart/form-data, commonly used for handling file uploads. I… | 87 | 1297 | active |
| AnyStyle AnyStyle is a fast machine-learning-based parser that splits bibliographic references into structured segments like author, title, and publ… | 38 | 1295 | active |
| wisupai/e2m E2M is a Python library that parses and converts many file types (doc, docx, epub, html, url, pdf, ppt, pptx, mp3, m4a) into Markdown using… | 24 | 1293 | active |
| 0xSero/ai-data-extraction A Python toolkit of extraction scripts that pulls complete chat, agent, and code-context history from AI coding assistants like Cursor, Cla… | 60 | 1291 | active |
| mmanela/diffplex DiffPlex is a C# library targeting .NET Standard 1.0+ that generates textual diffs between pieces of text. It provides low-level diffing, s… | 65 | 1283 | stable |
| llir/llvm A pure Go library for parsing, building, and manipulating LLVM IR without any C bindings or cgo. It provides an asm package for parsing LLV… | 23 | 1283 | active |
| KnugiHK/WhatsApp-Chat-Exporter A customizable Python CLI tool that parses WhatsApp chat databases from Android and iOS/iPadOS backups, including decryption of crypt12/14/… | 91 | 1278 | active |
| json-everything/json-everything A collection of .NET libraries extending System.Text.Json with support for JSON Schema validation, JSON Path, JSON Pointer, JSON Patch, JSO… | 77 | 1278 | active |
| ssine/pptx2md A Python CLI tool that converts PowerPoint .pptx files into Markdown, preserving titles, lists, formatting, images, and tables. It also sup… | 64 | 1278 | active |
| swiftlang/swift-llbuild llbuild is a low-level, library-based build system designed as a reusable and scalable build engine capable of handling dependency graphs w… | 97 | 1277 | active |
| Wiktextract A Python package and CLI tool that parses Wiktionary XML dump files and extracts structured dictionary data (glosses, translations, pronunc… | 75 | 1277 | active |
| TedDriggs/darling Darling is a Rust proc-macro helper library that lets macro authors declaratively parse attribute arguments into structs, inspired by serde… | 94 | 1276 | active |
| wickedest/Mergely Mergely is a JavaScript component for interactively diffing and merging text files in the browser, using an LCS-based diff algorithm with a… | 70 | 1275 | active |
| javacc/javacc JavaCC is a parser generator that reads grammar specifications and generates recursive-descent parsers in Java, C++, or C#. It includes sup… | 32 | 1275 | stable |
| ultrajson/ultrajson UltraJSON (ujson) is an ultra-fast JSON encoder and decoder written in pure C with Python bindings, usable as a drop-in replacement for the… | 92 | 4499 | maintenance |
| OmniBox Spider A collection of spider (scraper) sources and interfaces for the OmniBox media application, aggregated from publicly available internet info… | 59 | 1271 | active |
| HyperDown HyperDown is a modern, clearly structured Markdown parser written in PHP, built by SegmentFault for their own platform. It converts Markdow… | 42 | 1270 | stable |
| bruits/satteri Sätteri is a high-performance Markdown and MDX processing pipeline with the parser and AST implemented in Rust and a typed plugin layer exp… | 75 | 1269 | active |
| brendan-duncan/image A pure-Dart library for decoding, encoding, and manipulating images in many formats (PNG, JPEG, GIF, WebP, TIFF, BMP, and more). It works w… | 77 | 1268 | active |
| mvdan/xurls A Go library and CLI tool that extracts URLs from arbitrary text using regular expressions built from TLD lists. It offers Relaxed and Stri… | 63 | 1268 | active |
| jpsim/Yams Yams is a Swift YAML parser and emitter built on top of LibYAML. It provides Codable-based encoding/decoding, conversion to Swift standard … | 88 | 1267 | stable |
| regexident/cargo-modules A cargo plugin that visualizes and analyzes a Rust crate's internal module structure. It prints hierarchical module trees, internal depende… | 75 | 1267 | active |
| shinh/elvm ELVM is a compiler infrastructure similar to LLVM but targeting esoteric languages, compiling C code (via a modified 8cc frontend) into a s… | 68 | 1266 | active |
| react-styleguidist A TypeScript library that parses React component prop types defined in TypeScript interfaces instead of propTypes, extracting docgen metada… | 65 | 1266 | active |