--- description: React 19+ best practices globs: ["**/*.tsx", "**/*.jsx"] alwaysApply: true --- - Function components only. No class components. - Hooks at the top level. Custom hooks start with `use`. - Don't store derived state — compute it. - Don't sync state to state via effects. - Suspense + `use()` for async data when practical. - Stable list keys, never the index.