Javascript Best Practices

Idiomatic JavaScript patterns and conventions for maintainable existing code. Use when reviewing or refactoring JavaScript language patterns; defer project scaffolding, dependency setup, and tool configuration.

HoangNguyen0403 Updated 542 repo stars

File contents

JavaScript Best Practices

Priority: P1 (HIGH)

Implementation Guidelines

  • Naming: camelCase (vars/funcs), PascalCase (classes), UPPER_SNAKE (constants).
  • Errors: Throw Error objects only. Handle all async errors.
  • Comments: JSDoc for APIs. Explain "why" not "what".
  • Files: One entity per file. index.js for exports.
  • Modules: Named exports only. Order: Ext -> Int -> Rel.

Anti-Patterns

  • No Globals: Encapsulate state.
  • No Magic Numbers: Use const.
  • No Nesting: Guard clauses/early returns.
  • No Defaults: Use named exports.
  • No Side Effects: Keep functions pure.

Code & Reference

See references/REFERENCE.md for constants, custom errors, async patterns, and module structure examples.

Related Topics

language | tooling

Canonical response anchors

When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:

  • Naming

  • index.js

  • Additional task-grounded exact anchors: Comments

HoangNguyen0403/agent-skills-standard/tree/main/skills/javascript/javascript-best-practices commit 09f2cfb4d1

Frequently asked questions

npx skillmds@latest add hoangnguyen0403/javascript-best-practices-2