Remix Conventions

React 🟡 Mid

Définition

Conventions issues de Remix : routes = fichiers, loader, action et composant co-localisés, standards web (fetch, FormData, Response). Depuis React Router v7 (22 novembre 2024), Remix a été fusionné dans React Router : ces conventions vivent désormais dans le « framework mode » de React Router, stable et par défaut en v8 (17 juin 2026).

Analogie

Comme un restaurant local bio : il utilise les ingrédients natifs (standards web) au lieu d'importer des produits exotiques.

Exemple de code

// app/routes.ts : configuration explicite des routes (v7+)
import { index, route } from '@react-router/dev/routes';
export default [
  index('./home.tsx'),
  route('users/:id', './user.tsx'),
];

// app/user.tsx : loader + action + composant co-localisés
export async function loader({ params }: Route.LoaderArgs) {
  return { user: await getUser(params.id) };
}
export default function User({ loaderData }: Route.ComponentProps) {
  return <h1>{loaderData.user.name}</h1>;
}

Cas d'usage

Migrer une application Remix v2 vers React Router v7/v8 (framework mode) ; démarrer un projet full-stack React sans Next.js.

Anti-pattern

Chercher à installer « Remix » pour un nouveau projet : le framework recommandé est React Router en mode framework.
#framework#fullstack#routing

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre