3 ms·
I just shipped a new one of these a few minutes ago (from my phone). I found out about a new Python HTML parsing library - https://github.com/EmilStenstrom/jus
by simonw 11mo ago
I just shipped a new one of these a few minutes ago (from my phone).
I found out about a new Python HTML parsing library - https://github.com/EmilStenstrom/justhtml https://github.com/EmilStenstrom/justhtml - and wanted to try it out but I'm out without my laptop. So I had Claude Code for web build me a playground interface for trying it out: https://tools.simonwillison.net/justhtml https://tools.simonwillison.net/justhtml
It loads the Python library using Pyodide and lets you try it out with a simple HTML UI.
The prompts I used are in this PR: https://github.com/simonw/tools/pull/156 https://github.com/simonw/tools/pull/156
- dotancohen 11mo agoSerious question. How do you "try out" a library if somebody else (or something else) is writing the code? Thank you.
- simonw 11mo agoThe thing that matters for me when considering a new library is what it can do. Once I know that I can decide if it's worth learning how to use it at a code level. In the case of JustHTML I've now been able to try it against a few different HTML documents, seen it do good pretty-printing, played with its CSS selector implementation and got a feel for its event-based streaming parser. I'm very impressed! I think I'll be using it in the future next time I need an HTML parser.
- dotancohen 11mo agoI see, thank you. Until vibe coding came along, the ergonomics of a library were no less important than its functionality. But I understand how LLM assisted coding changes that perspective. I'll go tend to my empty lawn now.
- mirekrusin 11mo agoYou can use react with jsx without any build step in single html file as well.
- simonw 11mo agoYeah I used it for this one via Babel from a CDN but it felt pretty crufty: https://tools.simonwillison.net/box-shadow https://tools.simonwillison.net/box-shadow
- mirekrusin 11mo agoYes, I guess it would start showing advantage for complex ones. The idea is interesting, shame there is nothing for full stack like this, something like opinionated fossil-scm setup - which already has project management built in (for llm to use for its dev progress); together with backend and runtime state squashed inside single sqlite so you can create/delete them independently without a fuss.