#parse5
just released parse5 8.0.0 - all parse5 packages are now ESM-only 🔥

another migration complete! 🎉🎉
July 9, 2025 at 9:16 PM
published parse5 v8.0.1 🎉

this drops the install size from 877KB to 573KB
April 19, 2026 at 8:25 PM
parse5 - npmx | HTML parser and serializer. npmx.dev/package/parse5
parse5 - npmx
HTML parser and serializer.
npmx.dev
May 13, 2026 at 7:25 PM
hopefully will be migrating chokidar and parse5 to ESM only soon 👀
June 17, 2025 at 3:37 PM
we've now migrated parse5 to use @vitest.dev 🎉 big thanks to @ariperkkio.dev for help along the way too
January 22, 2025 at 2:49 PM
published a new version of parse5 and parse5/tools 🎉

few fixes and some dependency updates
April 22, 2025 at 5:37 PM
updated my profile info to be up to date 👀 though i feel like im missing some 😅
February 2, 2026 at 9:59 AM
if you like my OSS work, please do consider sponsoring 💙

these sponsorships help a lot and are much of why I'm able to carve out dedicated time for open source.

i'd love to be able to do more to help the community
Sponsor @43081j on GitHub Sponsors
Maintainer of chai, parse5, unjs, vueuse, tinylibs, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
February 18, 2026 at 10:40 AM
just a reminder that i have github sponsors if you'd like to sponsor the OSS work i do.

i maintain quite a few projects, and contribute to many more. nobody other than these sponsors pay for that. so these help a huge amount, however small 🙏

thanks so much to those who already did ❤️
Sponsor @43081j on GitHub Sponsors
Maintainer of chai, parse5, unjs, vueuse, tinylibs, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
January 11, 2026 at 9:51 PM
I setup my GitHub sponsors not long ago but didn't really mention it anywhere. If you appreciate what I do, these sponsorships do help a lot 🙏
My focus this year is all over like every year 😅 (e18e, chai, tinylibs, chokidar, vueuse, and much more). But I will keep on top of them all
Sponsor @43081j on GitHub Sponsors
Maintainer of chai, parse5, various eslint plugins, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
March 4, 2025 at 5:07 PM
this year i've carved a big chunk of my time out to officially work on OSS.

if you like what I do, or use the things I work on, sponsorships go a long way. these help me keep the balance I have, and allow me to dedicate a lot more time to open source.

thank you to those who already sponsor me 💙
Sponsor @43081j on GitHub Sponsors
Maintainer of clack, chai, parse5, unjs, vueuse, tinylibs, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
July 28, 2026 at 4:32 PM
- all tinylibs (tinybench, tinyexec, etc)
- various ESLint plugins
- parse5 (unreleased)
and a bunch more.

its been pretty smooth sailing. quite a few libs are still hesitant because they want to support <20 though
May 28, 2025 at 12:08 PM
remember, you can also sponsor me over at github. these sponsorships help me out a lot 🙏
Sponsor @43081j on GitHub Sponsors
Maintainer of chai, parse5, unjs, vueuse, tinylibs, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
September 1, 2025 at 8:35 AM
Misskeyバックエンド(実行時)から js-yaml, pug, jsdom, happy-dom, parse5 が消え、使用しない場合は summaly, sentry, nsfwjs も読み込まれないようになった
December 6, 2025 at 12:45 PM
Some smaller team examples too from my experience:
We have 3 active maintainers in chai, 2 in chokidar and 3 in parse5
Two of those libs are not "front facing" so we don't benefit from the same exposure. But together we seem to keep on top of things still

The difficulty is finding such people 😬
December 27, 2024 at 11:06 PM
also duplicated effort is a high risk without discussion _on larger tasks_. like when Felix & I both migrated parse5 to typescript separately without realising it. some discussion would've saved us a lot of time (however we did then work together and maintain it now 😅)
May 27, 2025 at 9:03 AM
So I have a patch locally for parse5 (I think that's the name) and it's pretty minimal, at least when I wrote it the spec change was basically delete these special cases. I think it's slightly more complex now but nothing too bad.
July 22, 2025 at 11:02 AM
True. I rewrote parse5 into typescript the same few days Felix (now the other maintainer alongside me) did the exact same thing
Huge amount of work by both of us.
Communication is key 😅
(In this case it worked out, since we used the best bits of both and now we both maintain p5)
November 9, 2024 at 8:55 AM
Ah astro potentially parses your markup and its parser hasn't been updated with the changes needed for customisable select yet. I had a similar issue with 11ty and had to patch parse5 temporarily to get it working. It's one of the downsides to changing the html parser, it takes time to propagate.
July 26, 2025 at 5:54 PM
New version of parse5 released to fix some typescript compatibility problems 🥳 github.com/inikulin/par...
Release v7.2.1 · inikulin/parse5
What's Changed chore(deps-dev): bump typescript from 5.6.2 to 5.6.3 by @dependabot in #1292 chore(deps-dev): bump globals from 15.10.0 to 15.11.0 by @dependabot in #1293 chore(deps): bump coverall...
github.com
October 30, 2024 at 1:10 AM
Yeah that has other issues. ?, @ can't be in attribute names. void tags like <br> not allowed. Many implementations use parse5, but that has opposite issue of trying to fix broken html.
June 10, 2026 at 9:56 AM
If you can share the patch with me I can try find time to sort it out in parse5

But yeah I imagine we have constraints around what can be in a select. And don't need them anymore
July 22, 2025 at 11:05 AM
That part is new code. Most tools are using parse5 and trying to be forgiving, which isn't needed for JSX/XHTML-like strictness. Rules ideas are from eslint-plugin-lit though.

Typescript analyzer inspired from github.com/runem/lit-an.... Syntax highlighting is mostly same github.com/mjbvz/vscode...
June 8, 2026 at 1:39 PM
Good question. Answer exists on a few fronts.

Because HTML doesn’t have if() and for(), there’s no “standard” way to do SSR. Most SSR tooling happens at the library level (eg Lit SSR) and use something like Parse5 or Playwright in a build step. Those typically generate “declarative Shadow DOM”. 1/…
February 12, 2026 at 7:04 PM
なるほどみてる / "1.parse5でHTMLをパース, 2.xmlserializerを使ってXHTMLに変換, 3.xmldomでDOMオブジェクトに変換, 4.xpathで走査" / Node.jsでウェブスクレイピングする色々な方法 #Node.js - Qiita https://qiita.com/ledsun/items/0965a60f9bdff04f2fa0#xpath-parse5
Node.jsでウェブスクレイピングする色々な方法 #Node.js - Qiita
ウェブサイトの更新チェックをするのに、ブラウザを開くのが面倒でスクリプト化したいことがあります。Node.jsを使って、スクリプト化します。お題国立大学法人 電気通信大学から最新の新着情報の日…
qiita.com
February 24, 2024 at 3:06 AM