Remix only runs in browsers that support ES Modules.
Usually teams are concerned about IE11 support when asking this question. Note that Microsoft itself has stopped supporting this browser for their web applications and it's probably time for you, too.
However, thanks to first-class support for Progressive Enhancement, Remix apps can support browsers as old as Netscape 1.0! This works because Remix is built on the foundations of the web: HTML, HTTP, and browser behavior. By following Remix conventions, your app can work at a baseline level for IE11, while still providing a highly interactive SPA experience for modern browsers. It doesn't take much effort on your part to achieve this, either.
Here's how it works. The Remix
<Scripts/> component renders module script tags like this:
<script type="module" src="..." />
Older browsers ignore it because they don't understand the
Remix cookies are configured to
SameSite=Lax by default which is a platform built-in protection against CSRF, if you need to support old browsers (IE11 or older) that doesn't support
SameSite=Lax you would have to implement CSRF protection yourself or use a library that implements it.