CtrlK
BlogDocsLog inGet started
Tessl Logo

frontend-patterns

React、Next.js、状態管理、パフォーマンス最適化、UIベストプラクティスのためのフロントエンド開発パターン。

48

Quality

51%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./docs/ja-JP/skills/frontend-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-organized, code-heavy pattern catalog with genuinely useful executable snippets (including subtle correctness commentary like the useQuery refs and the sort-mutation copy). Its weaknesses are that much of it re-teaches standard React knowledge Claude already has, it lacks selection guidance (when to use which pattern), and a ~640-line monolith with no reference files misses progressive disclosure entirely.

Suggestions

Split the pattern library into reference files (e.g. references/components.md, references/hooks.md, references/performance.md) and keep SKILL.md as a short overview with one-line pointers, including a short 'which pattern when' decision table.

Drop generic textbook material Claude already knows (useToggle, useDebounce, basic ErrorBoundary) and the closing '覚えておいてください' paragraph; keep only project-specific conventions and non-obvious pitfalls like the useQuery refetch-stability note.

Make usage examples self-contained by declaring or stubbing referenced helpers (MarketCard, Spinner, ModalProps) so snippets are truly copy-paste ready.

DimensionReasoningScore

Conciseness

Prose is minimal and code dominates, which is good, but much of the ~640 lines restates textbook React knowledge Claude already has (composition over inheritance, useDebounce, ErrorBoundary, React.memo/useCallback basics), and the closing '覚えておいてください...' paragraph is pure motivational padding. This fits 'mostly efficient but includes some unnecessary explanation or could be tightened' rather than the lean anchor 4.

3 / 5

Actionability

Every section gives concrete, executable TypeScript with usage snippets (e.g. the full useQuery implementation with refs to keep refetch referentially stable, the virtualizer list, the keyboard-navigation Dropdown). Minor gaps keep it below fully copy-paste-ready: usage examples reference undeclared helpers (MarketCard, Spinner, performSearch) and some imports/props types (ModalProps, DropdownProps) are omitted — matching 'mostly executable guidance with minor gaps'.

4 / 5

Workflow Clarity

This is a pattern catalog, not a multi-step process: sections are independent lookups with no sequencing and no guidance on when to choose one pattern over another beyond a single vague closing sentence. It exceeds the 50-line simple-skill exception, and although no destructive/batch operations are involved, there are no decision checkpoints ('use X when...') — fitting 'steps listed but checkpoints missing or implicit' at best.

3 / 5

Progressive Disclosure

Section headers are clear and consistent (component patterns → hooks → state → performance → forms → errors → a11y), but the entire ~640-line pattern library is inlined in SKILL.md with no references/, scripts/, or assets/ bundle. A library of this size clearly belongs partly in separate reference files ('content that should be separate is inline'), though the good in-file structure keeps it above anchor 2's 'no structure' example.

3 / 5

Total

13

/

20

Passed

Description

45%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description identifies the domain (React/Next.js, state management, performance) but is a topic label rather than a capability statement: it lists no concrete actions, omits any 'Use when...' trigger guidance, and risks overlapping with general frontend/coding skills. Rewriting it as concrete third-person actions plus explicit triggers would lift every dimension.

Suggestions

State concrete actions instead of topic labels, e.g. 'コンポーネント設計、カスタムフック実装、状態管理、レンダリング最適化のためのパターンを提供する' (provide patterns for component design, custom hooks, state management, render optimization).

Add an explicit trigger clause, e.g. 'React/Next.jsコンポーネント、フック、フォーム、パフォーマンスチューニングを実装・最適化する際に使用する' (use when implementing or optimizing React/Next.js components, hooks, forms, or performance).

Include the natural vocabulary from the body (component, hook, virtualization, error boundary, animation) so the description matches what users actually say.

DimensionReasoningScore

Specificity

The description names the domain ('React、Next.js、状態管理、パフォーマンス最適化、UIベストプラクティス') but the only action stated is generic 'フロントエンド開発パターン' (frontend development patterns) with no concrete verbs. This matches the anchor 'names the domain but actions are minimal or generic'; it does not reach 3 because no concrete actions like 'build components' or 'optimize rendering' are stated.

2 / 5

Completeness

The 'what' is present (frontend development patterns for React/Next.js), but there is no 'Use when...' clause or equivalent trigger guidance, which the guidelines cap at 3. It is not a 2 because the 'what' is clearly stated, not vague.

3 / 5

Trigger Term Quality

'React', 'Next.js', and '状態管理' (state management) are natural terms a user might say, but common trigger phrases and synonyms are missing — e.g. 'component', 'hook', 'form', '再レンダリング' (re-render), 'パフォーマンスチューニング'. This fits 'some relevant keywords but missing common variations or synonyms' rather than the good-coverage anchor 4.

3 / 5

Distinctiveness Conflict Risk

'React、Next.js' anchors it to a specific niche, but 'フロントエンド開発パターン' (frontend development patterns) and 'UIベストプラクティス' are broad enough to overlap with general web-development and coding skills. This is 'somewhat specific but could still overlap with similar skills'; not 4 because no distinct trigger phrases separate it from neighboring frontend skills.

3 / 5

Total

11

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (646 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository
affaan-m/ECC
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.