accordion
FreeUse when implementing expand and collapse content sections.
The English summary is being prepared. Showing the original description.
Use when implementing password recovery and reset flows.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Password recovery and reset flows
Password Reset is a multi-step recovery flow that allows users to regain access to their account when they've forgotten their password. The typical flow involves requesting a reset via email, receiving a time-limited token link, and setting a new password. A well-designed password reset balances security (preventing unauthorized resets) with usability (getting legitimate users back into their accounts quickly and without frustration).
Use Password Reset to allow users to recover access to their account when they've forgotten their password. Common scenarios include:
references/pattern.md, then choose the smallest viable variation.Do's ✅
for/idrole="alert" and aria-describedbyautocomplete="email" on the request form and autocomplete="new-password" on the reset formImmediate Confirmation UI
// Show confirmation immediately; send email in background
setSubmitted(true);
await sendResetEmail(email);
The Problem: "No account found with that email" lets attackers enumerate valid accounts.
How to Fix It: Always show "If an account exists, we've sent a reset link." Apply consistent response times for both cases.
The Problem: Reset tokens that never expire can be intercepted and used indefinitely.
How to Fix It: Set tokens to expire in 1 hour (or less). Show a clear error when an expired token is used, with an option to request a new one.
The Problem: Attackers flood a user's inbox with reset emails or use the endpoint for email enumeration timing attacks.
How to Fix It: Limit reset requests to 3 per email per hour. Return the same response and timing regardless of whether the email exists.
For full implementation detail, examples, and testing notes, see references/pattern.md.
Pattern page: https://uxpatterns.dev/patterns/authentication/password-reset
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use when implementing expand and collapse content sections.
The English summary is being prepared. Showing the original description.
Use when implementing user account configuration and preferences.
The English summary is being prepared. Showing the original description.
Use when implementing social activity and updates stream.
The English summary is being prepared. Showing the original description.
Use when implementing conversational AI chat interfaces.
The English summary is being prepared. Showing the original description.
Use when implementing handling AI-specific errors.
The English summary is being prepared. Showing the original description.
Use when implementing loading states for AI operations.
The English summary is being prepared. Showing the original description.