change-case

Comprehensive string case conversion library supporting camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, Title Case, dot.case, path/case, and more. Modular design — import only the specific case converters needed. Handles Unicode and special characters. The de-facto standard for all-in-one string case conversion in JavaScript/TypeScript projects.

Evaluated Mar 06, 2026 (0d ago) v5.x
Homepage ↗ Repo ↗ Developer Tools case-conversion string camelcase snake-case kebab-case pascal-case utilities
⚙ Agent Friendliness
67
/ 100
Can an agent use this?
🔒 Security
99
/ 100
Is it safe for agents?
⚡ Reliability
89
/ 100
Does it work consistently?

Score Breakdown

⚙ Agent Friendliness

MCP Quality
--
Documentation
88
Error Messages
75
Auth Simplicity
100
Rate Limits
100

🔒 Security

TLS Enforcement
100
Auth Strength
100
Scope Granularity
100
Dep. Hygiene
92
Secret Handling
100

Local computation, MIT licensed. No network, no credentials. Zero security concerns — pure string operations.

⚡ Reliability

Uptime/SLA
100
Version Stability
85
Breaking Changes
82
Error Recovery
88
AF Security Reliability

Best When

You need multiple string case conversion formats in a single project — one package instead of camelcase + snake-case + kebab-case + other separate packages.

Avoid When

You only need one specific case conversion — use the dedicated single-function package (camelcase, kebab-case, etc.) to minimize dependency footprint.

Use Cases

  • Normalize API response field names across multiple naming conventions in a single import (camelCase for JS, snake_case for Python APIs)
  • Generate correctly-cased identifiers for agent code generation (variables in camelCase, constants in CONSTANT_CASE, CSS classes in kebab-case)
  • Build configuration key transformers that convert between YAML snake_case and JavaScript camelCase representations
  • Implement database column name normalization between snake_case (SQL) and camelCase (ORM/JavaScript)
  • Convert user-input natural language strings to valid identifiers in multiple formats for scaffolding tools

Not For

  • Single-convention projects — use camelcase, snake-case, or similar focused packages if you only need one conversion type
  • High-performance bulk processing of millions of strings — change-case is accurate but not the fastest option for extreme throughput
  • Locale-specific capitalization rules — basic Unicode support only; complex locale rules may need custom handling

Interface

REST API
No
GraphQL
No
gRPC
No
MCP Server
No
SDK
Yes
Webhooks
No

Authentication

Methods: none
OAuth: No Scopes: No

Local library — no authentication required. MIT licensed.

Pricing

Model: open_source
Free tier: Yes
Requires CC: No

MIT licensed. Zero cost.

Agent Metadata

Pagination
none
Idempotent
Full
Retry Guidance
Not documented

Known Gotchas

  • Import path changed between v4 and v5 — v5 uses named exports from 'change-case' directly: import { camelCase, snakeCase } from 'change-case'; check version before using
  • camelCase from change-case vs the camelcase package may produce slightly different results for edge cases like 'XMLParser' — test your specific inputs
  • CONSTANT_CASE (screaming snake) is exported as constantCase, not CONSTANT_CASE — function name casing is lowercase camel despite the output style
  • v5 is ESM — CommonJS projects should pin to change-case@4 which supports require()
  • Does not handle all whitespace/delimiter types identically — test with actual input strings from your data source rather than assuming all delimiters work
  • No batch transformation API — for large arrays, map() over the array manually; change-case provides no array utility functions

Alternatives

Full Evaluation Report

Detailed scoring breakdown, competitive positioning, security analysis, and improvement recommendations for change-case.

$99

Scores are editorial opinions as of 2026-03-06.

5215
Packages Evaluated
26151
Need Evaluation
173
Need Re-evaluation
Community Powered