CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

threejs-data-visualization

Render WebGL-accelerated data visualizations with Three.js, raw WebGL, deck.gl, luma.gl, PixiJS, Sigma.js, Plotly WebGL traces, ECharts GL, CesiumJS, Babylon.js, or related GPU libraries. Use when the visualization needs true spatial structure, dense 2D or 3D GPU rendering, particle or flow animation, volumetric views, or interactive exploration that adds real analytical value.

62

Quality

78%

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 ./plugins/build-web-data-visualization/skills/threejs-data-visualization/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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-structured decision-oriented skill body: strong library-selection guidance, a clear default architecture, and good progressive disclosure into real reference files. The main costs are repetition — reduced-motion, mobile, and justify-against-SVG themes each restated 3-4 times across sections — and a handful of abstract directives with no scaffold, which keep it from the top efficiency tier.

Suggestions

Consolidate the repeated reduced-motion and mobile guidance into one place (e.g. the mobile reference already covers mobile contracts): state each rule once in the body and reference the file for detail, removing the restatements at lines 62, 97, 108, 111 and 14, 99, 113.

Merge the Overview 'Default assumption' paragraph with the Output Expectations 'Justify the WebGL choice' bullet, since both make the same SVG/DOM/Canvas2D comparison argument that the Choose/Avoid sections already encode as checklists.

Add a one-line description to each entry in the References section so a reader can navigate without opening files, and verify the parent-relative paths (../../references/foundations/*, ../../assets/templates/*) exist in the deployed bundle.

DimensionReasoningScore

Conciseness

The body never explains concepts Claude already knows (no library tutorials, no WebGL primer) and is dense with decision guidance, but recurring themes are restated several times: reduced-motion fallbacks appear in the particle section, Interaction Rules, and twice in Output Expectations (lines 62, 97, 108, 111); mobile guidance appears at lines 14, 99, 113, and 114; and the WebGL-vs-SVG justification is repeated across the Overview, Choose/Avoid sections, and Output Expectations. This fits the "mostly efficient but could be tightened" anchor rather than the minor-trims anchor, which requires little to no such repetition.

3 / 5

Actionability

As an instruction-only skill the absence of code is acceptable per the scoring notes, and the guidance is largely followable: the Library Selection section maps each of 12 libraries to concrete use cases, the architecture rules are specific ("cap DPR or quality", "pause offscreen/inactive loops", "define the data contract first: attributes, uniforms, textures, derived values, picking IDs"), and line 13 points to a concrete pre-implementation contract template. Minor gaps remain — a few directives are abstract without any scaffold (e.g. "Keep data-to-scene transforms explicit and reversible") — so it stops short of fully executable guidance.

4 / 5

Workflow Clarity

The 15-step Default Architecture is a clearly ordered progression (renderer choice → projection/transform decisions → primitives → batching → contract → mobile), with checkpoints present: the contract template must be completed "before implementation" (line 13) and includes screenshot QA, and line 86 constrains fallback renderer behavior. It is not a 5 because no explicit validate-and-fix feedback loop is stated in the body itself (QA is delegated to a reference file), and several of the numbered "steps" are standing rules rather than sequenced actions.

4 / 5

Progressive Disclosure

The SKILL.md is a proper overview that pushes detail into eight real, one-level-deep reference files (all eight paths under ./references/ resolve to actual files) organized into Shared theory / Skill references / Templates groups, with in-body pointers to the most load-bearing ones. It is not a 5 because the reference list is bare paths with no one-line description of what each file covers, and six referenced paths are parent-relative (../../references/foundations/* and ../../assets/templates/*) that do not resolve within the provided bundle, weakening navigation reliability.

4 / 5

Total

15

/

20

Passed

Description

78%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 strong, well-constructed description: explicit use-when clause with concrete trigger conditions, comprehensive library enumeration, and clean third-person voice. Its main weakness is a thin action vocabulary — a single render verb — and a handful of missing natural synonyms (point cloud, globe, flow map) that would improve trigger recall.

DimensionReasoningScore

Specificity

The description names the domain clearly and enumerates ten concrete libraries ("Three.js, raw WebGL, deck.gl, luma.gl, PixiJS, Sigma.js, Plotly WebGL traces, ECharts GL, CesiumJS, Babylon.js"), but the action vocabulary is a single verb — "Render WebGL-accelerated data visualizations" — with no further distinct concrete actions. This matches the anchor for naming the domain with 1-2 concrete actions; it is below the several-actions anchors, which the enumeration of tools alone does not satisfy since tool names are not actions.

3 / 5

Completeness

Both halves are explicit: the what is "Render WebGL-accelerated data visualizations with [ten named libraries]" and the when is a concrete trigger clause — "Use when the visualization needs true spatial structure, dense 2D or 3D GPU rendering, particle or flow animation, volumetric views, or interactive exploration that adds real analytical value." This matches the top anchor of clearly answering both what and when with concrete trigger phrases.

5 / 5

Trigger Term Quality

Strong natural-term coverage: library names users would actually say (Three.js, WebGL, deck.gl, PixiJS, Plotly, Cesium, Babylon.js) plus domain phrases like "particle or flow animation", "volumetric views", "dense 2D or 3D GPU rendering", and "spatial structure". A few common user phrasings are still missing (e.g. "point cloud", "3D scatter", "globe", "flow map"), which keeps it just below the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

The niche is well defined — GPU/WebGL rendering with named library triggers that no generic skill would claim — giving minimal confusion risk against unrelated skills. It retains minor overlap risk with a closely related general charting/dataviz skill for requests like "make a 3D chart" where both could plausibly fire, which fits the "mostly distinct; minor overlap risk with closely related skills" anchor rather than the clear-niche top anchor.

4 / 5

Total

16

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

openai/plugins

Path

plugins/build-web-data-visualization/skills/threejs-data-visualization/SKILL.md

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.