harden

Improves interface resilience through error handling, i18n support, and edge case management.

Updated Apr 4, 2026
One-click install
npx skills add https://github.com/AkaraChen/proxy-up --skill harden-akarachen
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: harden
Source: https://github.com/AkaraChen/proxy-up/tree/main/.agents/skills/harden
Command: npx skills add https://github.com/AkaraChen/proxy-up --skill harden-akarachen

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Interfaces built for ideal demo data break in production when users enter long text, lose network connectivity, switch languages, or trigger unexpected errors. This Skill systematically hardens UI components against real-world edge cases before they reach users. ## Core Features & Use Cases - Text Overflow & i18n Handling: Applies truncation, line-clamping, logical CSS properties for RTL languages, and Intl API formatting for dates, numbers, and currencies. - Error & Edge Case Management: Implements network error recovery, form validation, empty/loading states, concurrent operation handling, and graceful degradation. - Accessibility & Performance Resilience: Covers keyboard navigation, screen reader support, reduced-motion preferences, debouncing, and memory leak prevention. - Use Case: Before shipping a dashboard, run this Skill to test it with 100-character names, German translations, throttled 3G connections, and rapid double-clicks, then fix every overflow, missing error state, and RTL layout break it finds. ## Quick Start Harden the user profile page against long text, RTL languages, network errors, and empty states.

Frequently Asked Questions about harden

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle long text overflow in CSS?▼

Use text-overflow: ellipsis with overflow: hidden for single-line truncation, or -webkit-line-clamp for multi-line clamping. For flex and grid containers, set min-width: 0 on items so they can shrink below content size without overflowing.

How to make a web app support RTL languages like Arabic?▼

Use CSS logical properties such as margin-inline-start and padding-inline instead of physical left/right properties. Mirror directional icons with transform: scaleX(-1) under [dir="rtl"], and test layouts with Arabic or Hebrew content.

How much space should I budget for translated text?▼

Budget 30-40% extra space since languages like German run roughly 30% longer than English. Avoid fixed widths on text containers and use flexible flexbox or grid layouts that adapt to content length.

What HTTP error codes should a UI handle explicitly?▼

Handle 400 with validation messages, 401 by redirecting to login, 403 with a permission error, 404 with a not-found state, 429 with a rate-limit message, and 500 with a generic error plus retry option. Each status needs a distinct user-facing response.

Why does client-side form validation alone fail in production?▼

Client-side validation can be bypassed, so all inputs must also be validated and sanitized server-side to prevent injection attacks. Client validation improves UX with inline feedback, but server validation is the actual security boundary.

How do I prevent double form submission in React?▼

Disable the submit button while the request is in flight and track submission state to block duplicate clicks. For race conditions, use optimistic updates with rollback logic and abort pending requests when components unmount.