Skip to content
Agentmart
Submit a tool

frontend-dev

Frontend development guide — UI implementation, component architecture, state management, performance

Skill by amas-nghia

IndexedMIT★ 2
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/amas-nghia-frontend-dev

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Frontend development guide — UI implementation, component architecture, state management, performance

Use cases: design, frontend

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/frontend-dev

What's inside

Skill name
frontend-dev
Description
Frontend development guide — UI implementation, component architecture, state management, performance
License
MIT
Instructions
73 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • name: "frontend-dev" does not match folder "skill-frontend-dev"

Files (2)

  • SKILL.md
  • package.json

SKILL.md (first lines)

# Frontend Development Skill

## Quy trình triển khai UI

1. Đọc design spec / mockup trước khi viết bất kỳ code nào
2. Xác định component boundary — tách UI thành các mảnh nhỏ, độc lập
3. Xây dựng từ dưới lên: atom → molecule → organism → page
4. Wire state và data sau khi UI skeleton đã render đúng
5. Kiểm tra responsive (320px → 1920px) trước khi đánh dấu done

## Component Architecture

### Nguyên tắc tách component

- Mỗi component làm đúng một việc
- Props chỉ chứa data cần thiết để render — không pass toàn bộ object
- Tách presentational (render) khỏi container (data logic)
- Compound component khi nhiều sub-component chia sẻ state

### Naming

- Component: `PascalCase` (`TaskCard`, `DetailPanel`)
- Hooks: `use` prefix (`useTaskList`, `useScrollPosition`)
- Event handlers: `handle` prefix (`handleSubmit`, `handleClose`)
- CSS classes: kebab-case hoặc utility classes

## State Management

| Loại state | Đặt ở đâu |
|---|---|
| Server data (fetch/cache) | React Query / SWR |
| Global UI state | Zustand / Jotai |
| URL-shareable state | search params |
| Form state | React Hook Form |
| Local ephemeral | `useState` |

**Không** copy server state vào global store — dùng cache của query library.

## Performance checklist

- [ ] Images có `width` + `height` explicit
- [ ] `loading="lazy"` cho ảnh below-the-fold
- [ ] Dynamic import cho heavy component / library
- [ ] Memoization (`useMemo`, `useCallback`) chỉ khi đo được bottleneck
- [ ] Không animate `width`/`height`/`top`/`left` — chỉ `transform` + `opacity`
- [ ] `key` prop stable, không dùng index làm key cho danh sách có thứ tự thay đổi

## Accessibility (bắt buộc)

- Semantic HTML: `<button>` thay `<div onClick>`, `<nav>`, `<main>`, `<article>`
- `aria-label` khi text không đủ mô tả
- Focus management sau modal open/close
- Color contrast ≥ 4.5:1 (text thường), ≥ 3:1 (large text)
- Keyboard navigable: Tab, Enter, Escape

## Anti-patterns cần tránh

- `dangerouslySetInnerHTML` không sanitize
- Side effects trong render function
- Fetch trong component mà không có loading/error state
- Magic numbers trong CSS — dùng design tokens
- Inline styles cho layout — dùng CSS class
- `!important` trừ khi không còn cách nào khác

## Code quality checklist

- [ ] Component < 200 dòng; nếu hơn thì tách
- [ ] Không có `console.log` còn sót
- [ ] PropTypes hoặc TypeScript types đầy đủ
- [ ] Error boundary bao các section quan trọng
- [ ] Storybook story (nếu project dùng) cho component mới

From amas-nghia/relayhq, MIT.

More from amas-nghia/relayhq

Signals

Stars
2
Forks
0
Open issues
1
Last commit (this folder)
May 5, 2026 (5 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from amas-nghia

Cite this page

frontend-dev skill. Agent Mart. https://agentmart.dev/skills/amas-nghia-frontend-dev (last updated 2026-10-24)