Chris Coyier

Trust

Jeremy:

I would love it if someone could explain why they’re avoid native browser features but use third-party code.

I can’t speak for the industry, but I have a guess. Third-party code (like the referenced Bootstrap and React) have a history of smoothing over significant cross-browser issues and providing better-than-browser ergonomic APIs. jQuery was created to smooth over cross-browser JavaScript problems. That’s trust.

Web components do have pretty good browser support, but there are some pretty rough edges. Say you want to make a component for your text inputs, text areas, radio groups, checkboxes, etc. Ya know, like every design system in the world. Well, if you want those components to participate on a <form>, well, you’d hope they would submit their data to said form. But they don’t unless you do a little dance with attachInternals, which Safari doesn’t support. That doesn’t build trust.