Back to Explore

inikulin/parse5

GitHub
1 updates · last 90 days2 watchersOpen source

Last release:

parse5 is a Node.js toolset for HTML parsing and serialization, designed to be compliant with the WHATWG HTML Living Standard (HTML5). It’s useful when you need to parse HTML the way modern browsers do, or serialize HTML from a parsed structure.

Project status

  • The repository appears actively maintained, with a very recent upstream push on 2026-06-03 and a tagged update v8.0.1 on 2026-04-19.
  • The apparent update cadence is intermittent but ongoing, with changes seen across multiple timepoints: v7.3.0 (2025-04-22), v8.0.0 (2025-07-21), and v8.0.1 (2026-04-19).

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v8.0.1

    v8.0.1 is primarily a maintenance release with extensive dev dependency bumps (TypeScript, ESLint, Vitest, tooling) and CI workflow updates. It also includes a small tokenizer performance optimization (BMP characters use String.fromCharCode) and several repository hygiene changes (dropping memwatch, adjusting funding metadata).

  • v8.0.0

    v8.0.0 is primarily a tooling and dependency refresh, with the major functional change being a switch to ESM-only packaging. The diff also shows test tooling changes (removal of Jest in favor of nano-staged-based workflows) and multiple internal package version bumps to 8.0.0.

    Breaking
  • v7.3.0

    v7.3.0 includes a dependency bump (notably upgrading `entities`), internal parser adjustments around handling undefined values in the element stack, and repository maintenance work. The project also migrates its test runner from Jest to Vitest and updates documentation links.

  • v7.2.1

    v7.2.1 primarily updates dependency tooling and adjusts how parse5 re-exports tree adapter type definitions for improved TypeScript compatibility. The only library-facing code change in the diff is in the public `packages/parse5/lib/index.ts` export shape for `DefaultTreeAdapterTypes`.

  • v7.2.0

    v7.2.0 introduces parser support for the HTML `search` element, along with multiple internal refactors around tokenization and open element stack handling. The release also bumps tooling and dependency versions, and includes a parsing bug fix for `<noframes>`. Code changes indicate some behavior-relevant internal API surface adjustments that are not fully captured in the release notes.

    Features
  • v7.1.2

    v7.1.2 ships fixes for carriage return handling in the HTML tokenizer/preprocessor and updates parse5 exports for clearer error-code naming. It also adds a CommonJS build for parse5-parser-stream and updates module packaging to support require() consumers.

    Features
  • v7.1.0

    parse5 v7.1.0 focuses on the _parse5_ module, including a change to represent nodeName values as strings and a parser fix related to closing tags. The code diff also shows several additional behavioral and TypeScript-facing modifications that are not described in the release notes.

    BreakingFeatures
  • v7.0.0

    parse5 v7.0.0 is a major revamp: the codebase was ported to TypeScript and all packages moved to ECMAScript Modules (ESM), with significant performance improvements over v6.0.1. The release also updates parsing behavior to align with the HTML spec more closely and refactors multiple internal components, affecting edge cases and some streaming/tree-adapter integrations.

    BreakingFeatures
  • v6.0.0

    parse5 v6.0.0 introduces a new Tree Adapter interface method, updateNodeSourceCodeLocation, to support custom source-code location formats. The HTML parsing location-info logic was updated to call this new method when filling in node end locations (including end tags where applicable).

    BreakingFeatures
  • v6.0.1

    v6.0.1 is a small patch release focused on fixing parsing/documentation issues. The only functional code change addresses how the parser acknowledges self-closing `<hr>` tags, and the remaining changes are documentation and website link corrections plus synchronized package version bumps.