Skip to content
Text tools

Case Converter

Type an identifier or phrase to see it converted to camelCase, PascalCase, snake_case, kebab-case, and every other common case style at once. Paste a whole list to convert many lines in bulk.

Everything runs locally in your browser — nothing you type is ever sent to a server.

Guide: How to use & features

  • Type a single identifier or phrase into "Quick convert" to see all 9 naming styles at once.
  • Each row has its own "Copy" button so you can grab just the style you need.
  • "Bulk convert" lets you paste a multi-line list and convert it all to one chosen style at once.
  • Bulk mode is handy when you need to align JSON keys or a CSV header row to a different naming convention.

FAQ: FAQ

  • How are identifiers with digits (e.g. item2Name) split?

    A digit stays attached to whatever word it was already part of. "item2Name" splits into "item2" and "Name", and "base64Encode" splits into "base64" and "Encode" — digits are never pulled out as their own word.
  • Are acronyms like HTTP or URL handled correctly?

    Yes. A run of uppercase letters like "HTTPServerError" is split right before the next capitalized word begins, so it's recognized as three words: "HTTP", "Server", "Error".
  • What's the difference between "Quick convert" and "Bulk convert"?

    "Quick convert" takes one identifier and shows all 9 naming styles at once, useful for comparing styles side by side. "Bulk convert" takes a multi-line list and converts every line to one style you pick — useful for converting a whole set of JSON keys or a CSV header row at once.
  • Does it support non-Latin text, like Japanese or Chinese?

    It can split on explicit separators (spaces, underscores, etc.) in any script, but the automatic camelCase/PascalCase word-boundary detection (based on uppercase/lowercase transitions) assumes Latin letters. Non-Latin identifiers split correctly as long as they already use spaces or punctuation as separators.

Use cases: Common use cases

  • Converting naming conventions across languages

    Bridge the gap between a database column name (snake_case) and a JavaScript/TypeScript variable name (camelCase), or any other language/framework naming mismatch.

  • Bulk-converting JSON keys or CSV headers

    Paste a whole list of API response keys or a CSV header row and convert them all to a different naming convention at once with bulk mode.

  • Generating environment variable or constant names

    Type a setting name once and instantly see its CONSTANT_CASE env-var form and kebab-case CLI-flag form side by side.

  • Sanity-checking naming during code review

    Compare an existing variable name against the "correct" conversion to quickly spot naming-convention drift.

Notes: Notes & limitations

  • Word splitting is fully automatic

    Word boundaries are inferred from upper/lowercase transitions and separators. Special proper nouns like "iOS" or "macOS" may not split the way you expect, so always review the result visually.

  • Digits never become their own word

    "item2Name" is treated as two words, "item2" and "Name" — there is no way to pull the digit out into its own "item", "2", "Name" split.

  • No automatic word-boundary detection for non-Latin scripts

    Identifiers in Japanese, Chinese, and similar scripts only split correctly where an explicit separator (space, underscore, etc.) is present.

Quick convert

Style Result  
camelCase helloWorld
PascalCase HelloWorld
snake_case hello_world
CONSTANT_CASE HELLO_WORLD
kebab-case hello-world
dot.case hello.world
path/case hello/world
Title Case Hello World
Sentence case Hello world

Bulk convert

Articles for this tool

Recent Articles

Use Case
2026-08-07

curl Options Cheat Sheet: What -X, -H and -d Actually Do

A reference for the curl options you meet in real API work: why -d already implies POST, how -d differs from --data-raw, the @ prefix that silently reads a file, single vs double quotes, and why -k and -L deserve more caution than they usually get.

Introduction
2026-08-06

Converting Between JSON Schema and Zod: How required Maps to .optional()

Inside a two-way converter that turns JSON Schema into a Zod schema and Zod code back into JSON Schema. Covers the inverted defaults between required and .optional(), the constraint mapping table, and how the Zod side is parsed without executing any code.

Use Case
2026-08-06

SQL Clause Order Reference: Why WHERE Can't See Your SELECT Alias

The order you write SQL clauses is not the order the database runs them. A reference for the logical execution order (FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT), why aliases fail in WHERE, when to use WHERE vs HAVING, and the MySQL/PostgreSQL differences that bite.

Use Case
2026-08-06

Unified Diff Format Reference: Reading @@ Hunks in git diff Output

How to read the unified diff format git produces: what the four numbers in @@ -12,7 +12,9 @@ mean, why a one-character edit shows as a whole-line replacement, the whitespace and line-ending traps, \ No newline at end of file, combined @@@ diffs on merges, and rename detection via similarity index.

Use Case
2026-08-06

UTC to JST Reference: The 9-Hour Offset, Cheat Sheet & Timezone Pitfalls

Convert between UTC and JST (Japan Standard Time) with a cheat sheet. Covers what Z and +09:00 mean in ISO 8601, when JavaScript date parsing silently shifts by 9 hours, MySQL/PostgreSQL timezone behavior, and why GitHub Actions cron always runs in UTC.

Use Case
2026-08-04

CREATE TABLE Reference: MySQL vs PostgreSQL vs SQLite Types & Constraints

A cross-database CREATE TABLE (DDL) reference with cheat sheets for data types, auto-increment keys (AUTO_INCREMENT / IDENTITY / rowid), foreign key ON DELETE behavior, and the CHECK constraint that MySQL silently ignores.

Ad

Ad