adapt
無料Adapt designs to work across different screen sizes, devices, contexts, or platforms. Ensures consistent experience across varied environments.
日本語の概要は準備中です。原文の説明を表示しています。
Improve interface resilience through better error handling, i18n support, text overflow handling, and edge case management. Makes interfaces robust and production-ready.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Strengthen interfaces against edge cases, errors, internationalization issues, and real-world usage scenarios that break idealized designs.
Identify weaknesses and edge cases:
Test with extreme inputs:
Test error scenarios:
Test internationalization:
CRITICAL: Designs that only work with perfect data aren't production-ready. Harden against reality.
Systematically improve resilience:
Long text handling:
/* Single line with ellipsis */
.truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* Multi-line with clamp */
.line-clamp {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
/* Allow wrapping */
.wrap {
word-wrap: break-word;
overflow-wrap: break-word;
hyphens: auto;
}
Flex/Grid overflow:
/* Prevent flex items from overflowing */
.flex-item {
min-width: 0; /* Allow shrinking below content size */
overflow: hidden;
}
/* Prevent grid items from overflowing */
.grid-item {
min-width: 0;
min-height: 0;
}
Responsive text sizing:
clamp() for fluid typographyText expansion:
// ❌ Bad: Assumes short English text
<button className="w-24">Submit</button>
// ✅ Good: Adapts to content
<button className="px-4 py-2">Submit</button>
RTL (Right-to-Left) support:
/* Use logical properties */
margin-inline-start: 1rem; /* Not margin-left */
padding-inline: 1rem; /* Not padding-left/right */
border-inline-end: 1px solid; /* Not border-right */
/* Or use dir attribute */
[dir="rtl"] .arrow { transform: scaleX(-1); }
Character set support:
Date/Time formatting:
// ✅ Use Intl API for proper formatting
new Intl.DateTimeFormat('en-US').format(date); // 1/15/2024
new Intl.DateTimeFormat('de-DE').format(date); // 15.1.2024
new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD'
}).format(1234.56); // $1,234.56
Pluralization:
// ❌ Bad: Assumes English pluralization
`${count} item${count !== 1 ? 's' : ''}`
// ✅ Good: Use proper i18n library
t('items', { count }) // Handles complex plural rules
Network errors:
// Error states with recovery
{error && (
<ErrorMessage>
<p>Failed to load data. {error.message}</p>
<button onClick={retry}>Try again</button>
</ErrorMessage>
)}
Form validation errors:
API errors:
Graceful degradation:
Empty states:
Loading states:
Large datasets:
Concurrent operations:
Permission states:
Browser compatibility:
Client-side validation:
Server-side validation (always):
Constraint handling:
<!-- Set clear constraints -->
<input
type="text"
maxlength="100"
pattern="[A-Za-z0-9]+"
required
aria-describedby="username-hint"
/>
<small id="username-hint">
Letters and numbers only, up to 100 characters
</small>
Keyboard navigation:
Screen reader support:
Motion sensitivity:
@media (prefers-reduced-motion: reduce) {
* {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}
High contrast mode:
Slow connections:
Memory leaks:
Throttling & Debouncing:
// Debounce search input
const debouncedSearch = debounce(handleSearch, 300);
// Throttle scroll handler
const throttledScroll = throttle(handleScroll, 100);
Manual testing:
Automated testing:
IMPORTANT: Hardening is about expecting the unexpected. Real users will do things you never imagined.
NEVER:
Test thoroughly with edge cases:
Remember: You're hardening for production reality, not demo perfection. Expect users to input weird data, lose connection mid-flow, and use your product in unexpected ways. Build resilience into every component.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Adapt designs to work across different screen sizes, devices, contexts, or platforms. Ensures consistent experience across varied environments.
日本語の概要は準備中です。原文の説明を表示しています。
Review a feature and enhance it with purposeful animations, micro-interactions, and motion effects that improve usability and delight.
日本語の概要は準備中です。原文の説明を表示しています。
Improve layout, spacing, and visual rhythm. Fixes monotonous grids, inconsistent spacing, and weak visual hierarchy to create intentional compositions.
日本語の概要は準備中です。原文の説明を表示しています。
Perform comprehensive audit of interface quality across accessibility, performance, theming, and responsive design. Generates detailed report of issues with severity ratings and recommendations.
日本語の概要は準備中です。原文の説明を表示しています。
Amplify safe or boring designs to make them more visually interesting and stimulating. Increases impact while maintaining usability.
日本語の概要は準備中です。原文の説明を表示しています。
Improve unclear UX copy, error messages, microcopy, labels, and instructions. Makes interfaces easier to understand and use.
日本語の概要は準備中です。原文の説明を表示しています。