CtrlK
BlogDocsLog inGet started
Tessl Logo

viewport-zoom

Use when applies to any `<meta name='viewport'>` element in HTML documents. Check the `content` attribute for `user-scalable=no`, `user-scalable=0`, `maximum-scale=1`, or `maximum-scale` values less than 2. This is a common mistake in mobile-first templates and CSS frameworks.

64

Quality

77%

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 ./skills/viewport-zoom/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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.

A well-organized, actionable skill body that checks a single rule with exact values and a verbatim correct fix, backed by a real one-level reference file. Its main weaknesses are repetition of rationale Claude already knows (intro and 'Explain' sections), a contradictory maximum-scale threshold (below 5 vs below 2), and a boilerplate 'Code Review' section whose CSS-selector framing doesn't match the meta-tag rule.

Suggestions

Resolve the threshold contradiction: pick one maximum-scale bound (e.g., 'below 5' per the frontendchecklist rule, or 'below 2' as a significant limit) and use it consistently in Quick Reference, Check, and the frontmatter description.

Trim the intro paragraph and 'Explain' section to a one-line WCAG 1.4.4 citation — the rationale is knowledge Claude already has — and merge Quick Reference into Check to eliminate the triple enumeration of the same four patterns.

Rewrite or remove the 'Code Review' section: its instruction to 'flag exact selectors, declarations, or breakpoints' is CSS boilerplate that doesn't apply to an HTML meta-tag rule; say instead where the tag lives (HTML `<head>`, framework layout files) and how to report it.

DimensionReasoningScore

Conciseness

The core 'Check' and 'Fix' sections are efficient and contain non-obvious value (e.g., the iOS 16px font-size insight), but the opening rationale paragraph and the 'Explain' section restate WCAG pinch-zoom knowledge Claude already has, and the four violation patterns are enumerated three separate times (Quick Reference, Check, Explain). Mostly efficient but noticeably could be tightened — matches the 3 anchor; not 2 because the padding is partial, not pervasive.

3 / 5

Actionability

Concrete, executable guidance throughout: exact values to scan for ('user-scalable=no', 'user-scalable=0', 'maximum-scale=1', values below 2), the exact correct tag ('<meta name=\'viewport\' content=\'width=device-width, initial-scale=1\'>'), CSS properties to check ('touch-action: none', 'user-zoom: fixed'), and the specific iOS fix ('font-size: 1rem (16px)'). Not 5: the 'Code Review' section is vague boilerplate ('Review stylesheets, component styles, and responsive states... Flag exact selectors, declarations, or breakpoints') that mismatches the rule — the violation is an HTML meta attribute, not a CSS selector or breakpoint.

4 / 5

Workflow Clarity

As a simple single-purpose skill, the Check → Flag → Fix flow is unambiguous and the correct replacement is given verbatim. Not 5: an internal contradiction muddies the decision threshold — Quick Reference says 'Never set `maximum-scale=1` (or any value below 5)' while Check and the description flag 'any `maximum-scale` value below 2', leaving the reviewer uncertain which bound to enforce.

4 / 5

Progressive Disclosure

A compact, well-sectioned body (under 50 lines) with a clearly signaled one-level-deep pointer at the end — 'For full implementation details, code examples, and framework-specific guidance, see `references/rule.md`' — and the referenced file exists in the bundle with matching content. Navigation is trivial and nothing that belongs in a separate file is inlined.

5 / 5

Total

16

/

20

Passed

Description

83%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.

A highly specific, well-scoped description that names exact values to check and an explicit trigger condition, with minimal conflict risk. Its weaknesses are the awkward 'Use when applies to' phrasing and the absence of natural-language trigger terms like 'pinch zoom', 'zoom', or 'accessibility' that a user would more plausibly say.

Suggestions

Fix the garbled trigger clause: replace 'Use when applies to any `<meta name='viewport'>` element' with 'Use when reviewing HTML documents that contain a `<meta name="viewport">` tag, or when the user mentions pinch zoom, zoom, or viewport accessibility.'

Add natural-language synonyms and standard vocabulary users say — 'pinch-to-zoom', 'zoom disabled', 'accessibility', 'WCAG' — alongside the technical attribute names.

Optionally state the remediation capability ('Remove zoom-disabling values from the viewport meta tag') so the 'what' covers both detection and fix.

DimensionReasoningScore

Specificity

"Check the `content` attribute for `user-scalable=no`, `user-scalable=0`, `maximum-scale=1`, or `maximum-scale` values less than 2" enumerates multiple concrete, exact checks against a named target (the viewport meta element in HTML). Not the level below (4): coverage is comprehensive for this single-rule domain, not merely 'several actions with minor gaps'.

5 / 5

Completeness

Both 'what' (check the content attribute for these specific zoom-disabling values) and 'when' ("Use when applies to any `<meta name='viewport'>` element in HTML documents") are present and explicit. Not 5: the 'when' clause is grammatically garbled ('Use when applies to'), weakening how naturally it reads as a trigger, and it stops short of the concrete trigger phrases a 5-anchor example provides.

4 / 5

Trigger Term Quality

Good keyword coverage with exact technical terms users would encounter ("`<meta name='viewport'>`", "user-scalable=no", "maximum-scale", "mobile-first templates", "CSS frameworks"), but natural phrases users actually say are missing: 'pinch zoom', 'zoom', 'accessibility', 'WCAG'. Not 5 (which requires synonyms/natural-language variants); clearly above 3 since the terms present are the precise domain vocabulary, not generic.

4 / 5

Distinctiveness Conflict Risk

The description anchors on a single, unambiguous artifact (the viewport meta element) with unique attribute values ('user-scalable=no', 'maximum-scale'), giving it a clear niche with minimal overlap risk against other accessibility or HTML skills. No neighboring anchor fits better.

5 / 5

Total

18

/

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

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
thedaviddias/Front-End-Checklist
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.