awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
inikulin avatar

inikulin/parse5

0
View on GitHub↗
3,903 stars·252 forks·TypeScript·MIT·15 views

Parse5

parse5 is a WHATWG HTML parser and serializer for Node.js. It transforms HTML strings into a document object model and converts those trees back into valid HTML strings, following the logic defined by the HTML Living Standard.

The project functions as a streaming HTML processor, using incremental parsing to handle large documents in chunks. It includes an HTML5 compliant tokenizer that uses a state-machine approach to break input into tokens according to official web specifications.

The toolset covers HTML document parsing, serialization, and real-time rewriting via streams. These capabilities allow for programmatic analysis and data extraction from HTML documents while maintaining consistency across different environments.

Features

  • XML and HTML Document Parsers - Parses HTML5 content from strings or files into in-memory document trees for traversal and manipulation.
  • WHATWG HTML Standard Implementations - Implements the exact parsing and serialization logic defined by the HTML Living Standard for cross-browser consistency.
  • Incremental Parsing - Processes large HTML documents in small chunks via incremental parsing to minimize memory consumption.
  • HTML - Provides incremental parsing of HTML documents via streams to handle large files without loading the entire source into memory.
  • HTML Serialization - Converts structured document object model trees back into valid HTML text strings.
  • HTML Tokenization - Implements a state-machine driven tokenizer that converts character streams into HTML tokens according to web specifications.
  • State-Based Parsing - Implements state-machine driven parsing to track context and handle incoming characters according to HTML standards.
  • DOM Tree Construction - Transforms a sequence of tokens into a hierarchical document object model using specific nesting and stacking rules.
  • DOM Serialization - Transforms a structured document object model back into an HTML string for output or storage.
  • HTML and XML Serialization - Provides the complete pipeline of parsing HTML into a tree and serializing that tree back into HTML strings.
  • HTML String Parsing - Converts HTML strings into a structured tree representation for programmatic analysis of document content.
  • HTML Living Standard Compliance - Ensures parsing and serialization behave consistently by following the official WHATWG HTML Living Standard.
  • HTML Parsers - Provides a complete toolset for parsing and serializing HTML strings into a document object model following WHATWG standards.
  • Large Scale Streaming - Enables parsing and rewriting of massive HTML files using streams to prevent system memory overload.
  • HTML Response Rewriting - Modifies HTML content during the streaming process to perform real-time transformations of the document structure.
  • Incremental HTML Processing - Processes large HTML documents in chunks to minimize memory usage during analysis and real-time rewriting.
  • Parsing Tools - HTML parsing and serialization.
  • Parsing Utilities - Spec-compliant HTML parser.

Star history

Star history chart for inikulin/parse5Star history chart for inikulin/parse5

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Parse5

Similar open-source projects, ranked by how many features they share with Parse5.
  • fb55/htmlparser2fb55 avatar

    fb55/htmlparser2

    4,774View on GitHub↗

    htmlparser2 is a collection of tools for high-performance markup parsing, DOM manipulation, and incremental stream processing. It functions as an HTML and XML parser that converts markup strings into structured object trees, alongside a streaming markup parser designed for memory-efficient processing of large documents. The project includes a DOM manipulation library for querying, modifying, and serializing document object model trees. It also provides a web feed parser to extract structured metadata and entries from RSS, RDF, and Atom feeds. The library covers broad capabilities in data par

    TypeScript
    View on GitHub↗4,774
  • whatwg/htmlwhatwg avatar

    whatwg/html

    9,163View on GitHub↗

    This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.

    HTMLcanvaseventsourcehtml
    View on GitHub↗9,163
  • scinfu/swiftsoupscinfu avatar

    scinfu/SwiftSoup

    5,087View on GitHub↗

    SwiftSoup is a cross-platform HTML processing library for Swift that converts raw HTML or XML strings and files into a structured document object model. It provides the core infrastructure to parse web content into a traversable tree, enabling programmatic access to page elements across iOS, macOS, and Linux. The library features a CSS selector engine for data extraction and a whitelist-based sanitization system to remove unsafe tags and attributes from user-submitted content. It optimizes repetitive document queries through memoized query caching. The project covers DOM manipulation for upd

    Swift
    View on GitHub↗5,087
  • sunra/php-simple-html-dom-parsersunra avatar

    sunra/php-simple-html-dom-parser

    1,286View on GitHub↗

    php-simple-html-dom-parser is a PHP library for parsing HTML documents into a traversable in-memory tree that handles malformed markup gracefully. It constructs a complete object graph from raw HTML strings while retaining document structure and relational node hierarchies, and supports lazy child node iteration to load descendant nodes on demand for large documents. The library features a CSS selector query engine that translates selector expressions to locate and filter matching nodes within the parsed DOM tree. Programmatic accessors provide direct string-based attribute retrieval to extra

    HTML
    View on GitHub↗1,286
See all 30 alternatives to Parse5→

Frequently asked questions

What does inikulin/parse5 do?

parse5 is a WHATWG HTML parser and serializer for Node.js. It transforms HTML strings into a document object model and converts those trees back into valid HTML strings, following the logic defined by the HTML Living Standard.

What are the main features of inikulin/parse5?

The main features of inikulin/parse5 are: XML and HTML Document Parsers, WHATWG HTML Standard Implementations, Incremental Parsing, HTML, HTML Serialization, HTML Tokenization, State-Based Parsing, DOM Tree Construction.

What are some open-source alternatives to inikulin/parse5?

Open-source alternatives to inikulin/parse5 include: fb55/htmlparser2 — htmlparser2 is a collection of tools for high-performance markup parsing, DOM manipulation, and incremental stream… whatwg/html — This repository contains the HTML specification, which defines the core standards for web page structuring, content… scinfu/swiftsoup — SwiftSoup is a cross-platform HTML processing library for Swift that converts raw HTML or XML strings and files into a… sunra/php-simple-html-dom-parser — php-simple-html-dom-parser is a PHP library for parsing HTML documents into a traversable in-memory tree that handles… tmpvar/jsdom — jsdom is a Node.js implementation of web standards that functions as a headless browser emulator. It provides a… anglesharp/anglesharp — AngleSharp is an HTML5 DOM parser and web scraping framework designed to parse HTML5, SVG, and MathML documents into a…