← Frontend és designrendszerek adatlapja

Skill · 1.0.0 verzió

Frontend-megvalósítás

Használható felületté alakítja a terveket: érthető betöltési és hibaállapotokkal, megbízható műveletekkel és különböző képernyőkhöz igazodó elrendezéssel.

frontend-ui-engineering

Ezt a skillt használó csapattagok

Nézd meg, miben segít

Mikor hasznos?

Akkor használd, ha tervből működő komponenst készítesz vagy a szokásos úton kívül elbukó interakciót javítasz.

Miben segít neked?

  • Elkülöníti az adatbetöltést a megjelenítéstől és helyi állapottól.
  • Kezeli a betöltést, az üres találatokat és a hibákat; sikertelen mentéskor visszavonja a felületen előre megmutatott változást.
  • Billentyűzettel és telefonon is kezelhető felületet készít, kiszámítható fókuszkezeléssel és bezárható párbeszédablakokkal.

Például ezt kérheted

Készíts szűrhető ügyféltáblát mobilon is helyrehozható hibákkal. Hibázzon a szűrés és egy későbbi helybeni módosítás. Maradjanak a korábbi hasznos találatok, legyen újrapróbálás, és álljon vissza az elutasított érték.

Részletes dokumentáció

Itt a skill eredeti útmutatóját, példáit és ellenőrzési szempontjait olvashatod az eredeti nyelven.

Részletek…Összecsukás

Frontend UI Engineering

Build UI the way a design-aware engineer would: on the project's design system, accessible, responsive, with every state handled.

Components

  • Keep a component's code, tests and stories together, in the project's layout. One job per component; split one that grows past about 200 lines.
  • Composition over configuration: children and slots, not a long list of layout props.
  • Separate loading data from showing it: a container decides loading, error, empty or content; the presentational part only renders.

State: the simplest that works

  • Local state for one component; lift it for 2–3 siblings; context for read-heavy, rarely written values (theme, auth, locale); the URL for filters, pagination and shareable view state; the project's server-state cache for remote data; a global store only for complex app-wide client state.
  • Props passed through more than 3 levels that do not use them: restructure or use context.
  • Optimistic updates only with rollback on error and a refresh afterwards.

Avoid the generated look

Default Instead
Purple or indigo everything The project's own palette
Gradients as decoration Flat, or the system's subtle gradients
Maximum rounding everywhere The system's radius hierarchy
Generic hero section Content-first layout
Lorem ipsum Realistic content, long and short
Same generous padding everywhere The spacing scale, hierarchy through spacing
Stock card grid Layout by information priority
Heavy layered shadows Subtle or none unless the system has them
  • Spacing, color and type come from the scale and semantic tokens: no off-scale values such as 13px or 2.3rem, no raw hex.

Focus and dialogs

  • Visible :focus-visible styles; never outline: none without a replacement. :focus-within for compound controls.
  • Sticky headers, footers and overlays must not cover the focused element.
  • Dialogs: the native dialog opened with showModal(), or the project's accessible dialog. It needs a label, keeps focus inside, closes on Escape and returns focus to the trigger. Moving focus once is not a focus trap.

Forms

  • The right type and inputmode, autocomplete and a meaningful name; spellcheck off for emails, codes and usernames.
  • Never block paste. A checkbox or radio and its label share one hit area.
  • Submit stays enabled until the request starts, then shows progress. Errors appear inline at the field; focus the first one on submit.
  • Placeholders show an example, not the label. Warn before leaving with unsaved changes.

Touch and layout

  • touch-action: manipulation on controls; overscroll-behavior: contain in modals, drawers and sheets.
  • Every drag, swipe or pinch has a tap or keyboard alternative; no text selection while dragging.
  • Autofocus only on desktop, for one primary input.
  • Full-bleed layouts respect env(safe-area-inset-*). Prefer flex and grid to measuring in JavaScript. Fix overflow at its source instead of hiding scrollbars. Never disable zoom.

Responsive and states

  • Mobile first; check 320, 768, 1024 and 1440 px.
  • Loading content gets a skeleton shaped like it (aria-busy); a spinner only for an action in progress.
  • Every data view handles loading, empty (explain and offer the next action), error (message and retry), success and no-permission.

Before you finish

  • No console errors; works at 320, 768, 1024 and 1440 px.
  • Keyboard pass with visible focus; dialogs trap and return focus.
  • Loading, empty, error, success and permission states handled.
  • Design system spacing, color and type; no generated-look defaults.
  • Forms: types, autocomplete, inline errors, paste allowed.

Csomagban lévő fájlok 2

  • LICENSE.txt
  • SKILL.md