About the-art-of-naming
The Art of Naming is a coding skill that provides a structured guide to naming variables, functions, types, and other code elements. It is intended for developers and teams seeking consistent, readable conventions, with prioritized rules and examples in individual files.
Key features
- 01Apply casing conventions by code element
- 02Use short, intuitive, descriptive names
- 03Follow prefix and boolean naming rules
- 04Avoid duplicated context in members
- 05Choose function verbs by action
Use cases
- 01Name elements in new code
- 02Review naming consistency
- 03Refactor names for readability
- 04Set project linting conventions
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ develite98/ angular-best-practices --skill the-art-of-namingAfter installing, type/the-art-of-namingin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
AGENTS.mdmetadata.jsonrules/naming-boolean.mdnaming-casing-convention.mdnaming-context-duplication.mdnaming-function-pattern.mdnaming-prefix-convention.mdnaming-sid.mdnaming-variable-pattern.mdDetails
From the project READMEThe Art of Naming
Naming things is hard. This guide provides a structured methodology for naming variables, functions, classes, interfaces, and everything in between — producing code that is self-documenting, consistent, and readable.
When to Apply
Reference these guidelines when:
- Naming new variables, functions, classes, interfaces, or types
- Reviewing code for naming consistency
- Refactoring code to improve readability
- Setting up linting rules for a new project
- Onboarding new team members to the codebase conventions
Core Principles
- S-I-D — Every name must be Short, Intuitive, and Descriptive
- No Contractions —
onItemClick, neveronItmClk - Correct Casing — camelCase for members, PascalCase for types, UPPER_CASE for constants
- Meaningful Prefixes —
Ifor interfaces,_for private,is/has/shouldfor booleans - No Context Duplication —
MenuItem.handleClick(), notMenuItem.handleMenuItemClick() - Structured Patterns — P/HC/LC for variables, A/HC/LC for functions
- Correct Action Verbs —
get(sync),fetch(async),remove(collection),delete(permanent)
Rule Categories by Priority
| Priority | Rule | Impact | File |
|---|---|---|---|
| 1 | Casing Convention | CRITICAL | naming-casing-convention |
| 2 | S-I-D + No Contractions | CRITICAL | naming-sid |
| 3 | Prefix Conventions | HIGH | naming-prefix-convention |
| 4 | Boolean Naming | HIGH | naming-boolean |
| 5 | Context Duplication | HIGH | naming-context-duplication |
| 6 | Function Naming (A/HC/LC) | HIGH | naming-function-pattern |
| 7 | Variable Naming (P/HC/LC) | MEDIUM | naming-variable-pattern |
Quick Reference
1. Casing Convention (CRITICAL)
naming-casing-convention- camelCase for variables/functions, PascalCase for classes/enums/types, UPPER_CASE for exported constants
2. S-I-D + No Contractions (CRITICAL)
naming-sid- Names must be Short, Intuitive, Descriptive — never use contractions
3. Prefix Conventions (HIGH)
naming-prefix-convention-Ifor interfaces,_for private members,T/R/U/V/Kfor generics
4. Boolean Naming (HIGH)
naming-boolean- Prefix booleans withis/has/should/can, keep names positive
5. Context Duplication (HIGH)
naming-context-duplication- Don't repeat class/component name in member names
6. Function Naming (HIGH)
naming-function-pattern- A/HC/LC pattern + correct action verbs (get/set/fetch/remove/delete/compose/handle)
7. Variable Naming (MEDIUM)
naming-variable-pattern- P/HC/LC pattern for structured, predictable variable names
How to Use
Read individual rule files for detailed explanations and code examples:
rules/naming-casing-convention.md
rules/naming-sid.md
rules/naming-prefix-convention.md
rules/naming-boolean.md
rules/naming-context-duplication.md
rules/naming-function-pattern.md
rules/naming-variable-pattern.md
Each rule file contains:
- Brief explanation of why it matters
- Incorrect code examples with explanation
- Correct code examples with explanation
- Summary tables and references
Full Compiled Document
For the complete guide with all rules expanded: AGENTS.md