Best for
- Use this skill when writing, reviewing, debugging, or modernizing JavaScript across browser, Node.
Benknightdark/neo-skills/skills/neo-javascript/SKILL.md
Use this skill when writing, reviewing, debugging, or modernizing JavaScript across browser, Node.js, and pure JS projects. Trigger for ES module/CommonJS issues, async patterns, functional array/set/iterator code, DOM/runtime behavior, or version-aware ECMAScript syntax.
Decision brief
js, and pure JS projects. Trigger for ES module/CommonJS issues, async patterns, functional array/set/iterator code, DOM/runtime behavior, or version-aware ECMAScript syntax.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/Benknightdark/neo-skills --skill "skills/neo-javascript"Inspect the Agent Skill "neo-javascript" from https://github.com/Benknightdark/neo-skills/blob/c3e3d1bcf6aae00a729ceab257e6a68dd40d89ec/skills/neo-javascript/SKILL.md at commit c3e3d1bcf6aae00a729ceab257e6a68dd40d89ec. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
1. Perceive (Environment Awareness): - Inspect ESLint / Biome configuration to identify the project's ecmaVersion and coding conventions. - Determine runtime target: browser (check for DOM APIs, bundler config like vite.config.js, webpack.config.js). - Detect JavaScript embedded…
The user asks to write, debug, refactor, or review JavaScript code.
Arrow Functions: (a, b) = a + b concise function syntax with lexical this binding.
Arrow Functions: (a, b) = a + b concise function syntax with lexical this binding.
Optional Chaining (?.): Safely access deeply nested properties without manual null checks.
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 87/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 7 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
*.js, *.mjs, or JavaScript configuration files (e.g., eslint.config.js, vite.config.js).*.html) or Razor views (*.cshtml) contain inline <script> blocks or reference external .js files via <script src="...">.var to const/let, callbacks to async/await, legacy scripts to ESM).ecmaVersion and coding conventions.vite.config.js, webpack.config.js).*.html) or Razor views (*.cshtml): identify inline <script> blocks and external <script src="..."> references. For .cshtml files, note the interplay with Razor syntax (@ directives, @section Scripts).target, browserslist). For inline scripts without a build pipeline, default to the browser's native ES support.const/let, arrow functions, and template literals.Object.freeze, structuredClone, immutable array methods).async/await and Promise composition for asynchronous operations.import/export) as the standard module system.===) usage and absence of var declarations.try/catch around await, .catch() on Promises).eval(), no prototype pollution, no innerHTML with unsanitized input).(a, b) => a + b concise function syntax with lexical this binding.let / const: Block-scoped variable declarations replacing var.`Hello, ${name}!` for string interpolation and multi-line strings.const { id, name } = user; extract values from objects and arrays....rest parameters, and ...spread for arrays/objects.class syntax for prototype-based inheritance with constructor, extends, and super.new Promise((resolve, reject) => ...) for asynchronous flow control.import / export for modular code organization (ES Modules).includes(), startsWith(), endsWith() for easier string searching.Array.from(), Array.of(), find(), findIndex() for enhanced array manipulation.Number.isInteger(), Number.isNaN(), Math.trunc(), Math.sign().function* and for...of for lazy iteration.async / await (ES2017): Syntactic sugar for Promise-based asynchronous code.{ ...obj } for object shallow cloning and rest extraction.Promise.finally (ES2018): Execute cleanup logic regardless of fulfillment or rejection.for await...of for consuming async iterables.Array.flat / flatMap (ES2019): Flatten nested arrays and map-then-flatten in one step.Object.fromEntries (ES2019): Convert key-value pairs back into an object.catch { } without requiring the error parameter.?.): Safely access deeply nested properties without manual null checks.??): Provide defaults only for null/undefined, unlike || which also catches 0, "", false.BigInt: Arbitrary-precision integer arithmetic via 123n literal syntax.Promise.allSettled(): Wait for all promises to complete regardless of rejection.globalThis: Universal reference to the global object across all environments.import(): Load modules conditionally or lazily at runtime.&&=, ||=, ??=): Combine logical operators with assignment for concise state updates.String.prototype.replaceAll(): Replace all occurrences without regex.Promise.any(): Resolve with the first fulfilled promise, reject only if all reject.1_000_000 for readable large numbers.await: Use await directly in ESM modules without wrapping in an async function.{ cause }): Chain errors to preserve root cause context.Array.at(): Negative indexing for arrays, e.g., arr.at(-1) for the last element.Object.hasOwn(): Safer, prototype-independent property check replacing hasOwnProperty.#field) instance fields and methods./d flag): Get start/end positions of captured groups.toSorted(), toReversed(), toSpliced(), with() — return new arrays without mutation.Array.findLast() / findLastIndex(): Search arrays from the end.Promise.withResolvers(): Destructure { promise, resolve, reject } for cleaner deferred patterns.Object.groupBy() / Map.groupBy(): Group array elements by a classifier function.union(), intersection(), difference(), symmetricDifference(), isSubsetOf(), isSupersetOf(), isDisjointFrom()..map(), .filter(), .take(), .drop(), .flatMap(), .toArray() on iterators.RegExp.escape(): Safely escape special characters for use in RegExp construction.import data from './data.json' with { type: 'json' }.Promise.try(): Safely start a promise chain from a synchronous or asynchronous function.String.prototype.isWellFormed() and toWellFormed().Date object, providing robust date/time arithmetic.using keyword with Symbol.dispose for deterministic cleanup.const by default; use let only when reassignment is necessary. Never use var.import/export) as the default module system. Use import() for dynamic/lazy loading.toSorted, toReversed, with), spread operators, and structuredClone for deep copies.await in try/catch or chain .catch(). Never leave Promises unhandled. Use AbortController for cancellable operations.async/await, from var to const/let).Alternatives
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
dotnet/skills
Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing
HKUDS/Vibe-Trading
Create, modify, and optimize quantitative trading strategies, then backtest and evaluate them.
K-Dense-AI/scientific-agent-skills
Distributed computing for larger-than-RAM pandas/NumPy workflows. Use when you need to scale existing pandas/NumPy code beyond memory or across clusters. Best for parallel file processing, distributed ML, integration with existing pandas code. For out-of-core analytics on single machine use vaex; for in-memory speed use polars.