Parsing

Top 23 Parsing Open-Source Projects

  • marked

    A markdown parser and compiler. Built for speed.

  • Project mention: Eleventy vs. Next.js for static site generation | dev.to | 2023-12-14

    Next, install gray-matter to extract metadata from the front matter of markdown files, and marked to convert the markdown files to HTML:

  • PostCSS

    Transforming styles with JS plugins

  • Project mention: PostCSS - my initial experience | dev.to | 2024-01-11

    the plugins in the official PostCSS website were old like IE6 or the marquee tag, and

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • CyberChef

    The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis

  • Project mention: PicoCTF 2024: packer | dev.to | 2024-04-05

    Then we take the encrypted text and use CyberChef to decrypt it.

  • pydantic

    Data validation using Python type hints

  • Project mention: Advanced RAG with guided generation | dev.to | 2024-04-18

    First, note the method prefix_allowed_tokens_fn. This method applies a Pydantic model to constrain/guide how the LLM generates tokens. Next, see how that constrain can be applied to txtai's LLM pipeline.

  • markdown-it

    Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed

  • Project mention: Creating excerpts in Astro | dev.to | 2024-03-14

    Parse it into HTML using markdown-it

  • tree-sitter

    An incremental parsing system for programming tools

  • Project mention: Lezer: A Parsing System for CodeMirror, Inspired by Tree-Sitter | news.ycombinator.com | 2024-03-24

    I 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...)

  • ANTLR

    ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

  • Project mention: Library to parse slash commands with validation? | /r/dotnet | 2023-06-02

    antlr https://github.com/antlr/antlr4

  • 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.

    WorkOS logo
  • acwj

    A Compiler Writing Journey

  • Project mention: Toy C compiler, worth having an IR stage? | /r/Compilers | 2023-07-01

    I wrote https://github.com/DoctorWkt/acwj. I'm working on a version with an IR so I can add some optimisations to it. I'd say, yes, have an IR :-)

  • maigret

    🕵️‍♂️ Collect a dossier on a person by username from thousands of sites

  • MJExtension

    A fast, convenient and nonintrusive conversion framework between JSON and model. Your model class doesn't need to extend any base class. You don't need to modify any model file.

  • NetNewsWire

    RSS reader for macOS and iOS.

  • Project mention: RSS is still pretty great | news.ycombinator.com | 2024-02-11

    NetNewsWire is excellent. Clean, responsive, blends into the desktop, and doesn't have memory leak issues like so many macOS RSS readers do. I wish all software could be like it.

    https://netnewswire.com/

  • remark

    markdown processor powered by plugins part of the @unifiedjs collective (by remarkjs)

  • Project mention: Which software do you use to create presentations using Vim that is superior to existing ones? | /r/neovim | 2023-12-11

    I also didn't try this tool but it's called RemarkJS which is named too similar to revealjs.

  • esprima

    ECMAScript parsing infrastructure for multipurpose analysis

  • Project mention: ESLint: under the hood | dev.to | 2023-11-07

    Focusing again on ESLint, the parser used by the linter is called Espree. This is an in-house parser built by the ESLint folks to fully support ECMAScript 6 and JSX on top of the already existing Esprima. The Espree module provide APIs for both tokenization and parsing that you can easily test out.

  • js-yaml

    JavaScript YAML parser and dumper. Very fast.

  • lightningcss

    An extremely fast CSS parser, transformer, bundler, and minifier written in Rust.

  • Project mention: I'm fed up with it, so I'm writing a browser | news.ycombinator.com | 2023-09-22

    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.

  • x-ray

    The next web scraper. See through the <html> noise.

  • valibot

    The modular and type safe schema library for validating structural data 🤖

  • Project mention: Effortlessly Generate Structured Information with Ollama, Zod, and ModelFusion | dev.to | 2024-01-18

    The ModelFusion zodSchema function wraps the Zod object definition. This is necessary because ModelFusion supports Zod and unchecked JSON schemas and is adaptable to other schema validation libraries such as Valibot.

  • PhoneNumberKit

    A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.

  • estree

    The ESTree Spec

  • ohm

    A library and language for building parsers, interpreters, compilers, etc.

  • Project mention: Ohm: A library and language for building parsers, interpreters, compilers, etc. | news.ycombinator.com | 2023-10-31

    Building an interpreter or a compiler from a grammar is an interesting idea. I can't immediately see how to go about it - the grammar would need to match on SSA or similar.

    The examples have a lisp-like interpreter at https://github.com/ohmjs/ohm/blob/main/examples/simple-lisp/... which definitely uses a grammar for parsing and might use a generic AST representation.

    Will have to think more - a grammar might be a worthwhile way to specify a nanopass style compiler pipeline.

  • xml2js

    XML to JavaScript object converter.

  • Project mention: How to Create a Real-time Public Transportation Schedule App | dev.to | 2024-03-01

    xml2js to convert XML returns into JSONs.

  • PEG.js

    PEG.js: Parser generator for JavaScript

  • Project mention: Peg.js: Parser Generator for JavaScript | news.ycombinator.com | 2023-11-24
  • pest

    The Elegant Parser (by pest-parser)

  • Project mention: nom &gt; regex | /r/rust | 2023-12-06

    And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop

  • 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.

    InfluxDB logo
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 2024-04-18.

Parsing related posts

Index

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

Project Stars
1 marked 31,845
2 PostCSS 28,181
3 CyberChef 25,384
4 pydantic 18,521
5 markdown-it 17,130
6 tree-sitter 16,380
7 ANTLR 16,331
8 acwj 9,819
9 maigret 9,585
10 MJExtension 8,512
11 NetNewsWire 7,842
12 remark 7,187
13 esprima 6,962
14 js-yaml 6,177
15 lightningcss 5,929
16 x-ray 5,827
17 valibot 5,127
18 PhoneNumberKit 5,013
19 estree 4,947
20 ohm 4,871
21 xml2js 4,813
22 PEG.js 4,726
23 pest 4,351
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.
www.influxdata.com