A few things stood out I wanted write down. First, here’s Michael talking about React:
React is this very capable tool that you can build really, really terrible experiences with.
He points this out, in part, because the default behavior for a long time with React has been that all the code you write — and the tools you use alongside it — get sent over the wire as a dependency for users, often resulting in slow, janky experiences.
<a> links and
<form> tags like 1999.
And you can do this on a page-by-page basis. It’s not site-wide choice.
I found the host’s articulation of this point a bit funny:
[Host] Whoa. Whoa. So we're talking about a framework
[Host] That uses React
[Michael] Yeah, absolutely.
Let that sink in.
You can build experiences that start with basic HTML. If that’s all you need, great. That’s valid and it works in Remix. Send that to your clients (and their action requests will still work via
<form> elements). Everything else from there can be a layered enhancement if you choose it — no need to build two apps.
Towards the end of the podcast, the host asks Michael a question along the lines of: why is the philosophy of Remix to honor existing web standards technologies? His answer:
That resonates with me. Progressive enhancement is the technical approach to fulfilling the web’s ethos of universal accessibility.