33 JavaScript Concepts is a learning guide that explains core JavaScript ideas through practical examples and selected resources. It helps developers understand topics such as primitive values, objects, coercion, equality, scope, closures, and the call stack. The catalogue add-ons provide skills related to studying or working with the guide.
Borrowing it
Nothing to install: this file belongs to leonardomso/33-js-concepts. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/leonardomso/33-js-concepts/master/.claude/skills/test-writer/SKILL.mdgit clone --depth 1 https://github.com/leonardomso/33-js-conceptsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/leonardomso/33-js-concepts/test-writer)<a href="https://agentmods.dev/skills/leonardomso/33-js-concepts/test-writer"><img src="https://agentmods.dev/badge/skills/leonardomso/33-js-concepts/test-writer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/leonardomso/33-js-concepts/test-writer"><img src="https://agentmods.dev/badge/skills/leonardomso/33-js-concepts/test-writer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00026 | $0.05390 |
| Opus 5.5 | $0.00010 | $0.02156 |
| Sonnet 5.5 | $0.00005 | $0.01078 |
| Haiku 4.5 | $0.00003 | $0.00539 |
Grade A, and why
test-writer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 941 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill: Test Writer for Concept Pages
Use this skill to generate comprehensive Vitest tests for all code examples in a concept documentation page. Tests verify that code examples in the documentation are accurate and work as described.
When to Use
- After writing a new concept page
- When adding new code examples to existing pages
- When updating existing code examples
- To verify documentation accuracy through automated tests
- Before publishing to ensure all examples work correctly
Test Writing Methodology
Follow these four phases to create comprehensive tests for a concept page.
Phase 1: Code Example Extraction
Scan the concept page for all code examples and categorize them:
| Category | Characteristics | Action |
|---|---|---|
| Testable | Has console.log with output comments, returns values |
Write tests |
| DOM-specific | Uses document, window, DOM APIs, event handlers |
Write DOM tests (separate file) |
| Error examples | Intentionally throws errors, demonstrates failures | Write tests with toThrow |
| Conceptual | ASCII diagrams, pseudo-code, incomplete snippets | Skip (document why) |
| Browser-only | Uses browser APIs not available in jsdom | Skip or mock |
Phase 2: Determine Test File Structure
tests/
├── fundamentals/ # Concepts 1-6
├── functions-execution/ # Concepts 7-8
├── web-platform/ # Concepts 9-10
├── object-oriented/ # Concepts 11-15
├── functional-programming/ # Concepts 16-19
├── async-javascript/ # Concepts 20-22
├── advanced-topics/ # Concepts 23-31
└── beyond/ # Extended concepts
└── {subcategory}/
File naming:
- Standard tests:
{concept-name}.test.js - DOM tests:
{concept-name}.dom.test.js
Phase 3: Convert Examples to Tests
For each testable code example:
- Identify the expected output (from
console.logcomments or documented behavior) - Convert to
expectassertions - Add source line reference in comments
- Group related tests in
describeblocks matching documentation sections
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 941 lines · 26 tokens per session scan A 76dda6fa2dd6
test-writer is a skill published in the GitHub repository leonardomso/33-js-concepts (66,529 stars, last pushed 16d ago), licensed MIT. It adds 26 tokens to every session and 5,390 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
test-writer compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| test-writerleonardomso/33-js-concepts | Skill | 67k | 16d ago | MIT | A | 26 | Claude Code |
| image-studio-ui-testsAutomattic/wp-calypso | Skill | 13k | today | GPL-2.0 | A | 52 | Claude Code, Codex |
| authoring-data-quality-checksPostHog/posthog | Skill | 41k | today | none | A | 174 | Claude Code, Codex |
| authoring-benchmarksNVIDIA/elements | Skill | 113 | today | Apache-2.0 | A | 105 | Claude Code, Codex |
| chart-defaultsag-grid/ag-charts | Skill | 489 | today | none | A | 60 | Claude Code, Codex |
| compiler-commitreact/react | Skill | 252k | yesterday | MIT | A | 42 | Claude Code |
| compiler-portreact/react | Skill | 252k | yesterday | MIT | A | 35 | Claude Code |