smithery.ai

javascript

Best practices for JavaScript/TypeScript development including modern ES6+ patterns, error handling, and performance optimization.

First seen Mar 20, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 1,639 B
  • docs SUMMARY.md 148 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 3 installs

SKILL.md

JavaScript/TypeScript Best Practices

Code Style

  • Use const by default, let when reassignment is needed
  • Use template literals for string interpolation
  • Prefer arrow functions for callbacks
  • Use destructuring for object/array access
  • Use async/await over .then() chains
  • Use semicolons consistently (pick a style)

Error Handling

  • Always handle promise rejections with .catch() or try/catch
  • Use try/catch with async/await
  • Provide meaningful error messages with context
  • Don't swallow errors silently
  • Create custom error classes for domain errors

Modern Patterns

  • Use optional chaining (?.) and nullish coalescing (??)
  • Use spread operator for shallow object/array copies
  • Use Map/Set for complex data structures
  • Prefer for...of over forEach for iterables
  • Use Object.entries/keys/values for object iteration
  • Use Array.from() for array-like conversions

TypeScript Specific

  • Prefer interfaces over type aliases for objects
  • Use strict mode in tsconfig.json
  • Avoid 'any' type - use 'unknown' if needed
  • Use generics for reusable type-safe code
  • Use discriminated unions for type narrowing
  • Leverage const assertions for literal types

Performance

  • Avoid creating functions inside loops
  • Use object pools for frequent allocations
  • Debounce/throttle expensive operations
  • Use Web Workers for CPU-intensive tasks