deftools.io Text & Data

Case Converter

Convert text between camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, Title Case and more naming conventions.

✓ Saved
Try an example

About this tool

Case conversion rewrites identifiers between the naming conventions programming languages and style guides expect. Paste any text — HTMLParser, my-var_name, CONSTANT_VALUE, or even mixed input — and the tool shows it in all 16 conventions at once, so you can copy whichever one you need.

With Preserve acronyms on (the default), runs of capitals stay intact: HTMLParser tokenises as ["HTML", "Parser"], giving htmlParser in camelCase and HTMLParser in PascalCase — instead of the garbled hTmLParser you get with naive per-letter splitting.

Convert each line separately treats every line of a list as its own input — handy for renaming a column of identifiers exported from a database or spreadsheet. Press Ctrl/+Enter to copy every result at once.

FAQ

Why does HTMLParser become hTmLParser in camelCase?

Without acronym preservation, each capital letter is treated as a separate word. Keep "Preserve acronyms" checked (the default) and HTMLParser tokenises as ["HTML", "Parser"], producing htmlParser in camelCase and HTMLParser correctly in PascalCase.

What is the difference between kebab-case and snake_case?

Only the separator. kebab-case joins words with hyphens (my-variable) and is conventional in CSS class names and URLs; snake_case uses underscores (my_variable) and is common in Python, Ruby, and SQL identifiers.

Are numbers handled?

Yes. A letter-to-digit boundary is treated as a word break: order123item456 splits into ["order", "123", "item", "456"], giving order123Item456 in camelCase and ORDER_123_ITEM_456 in CONSTANT_CASE.

Is my text sent anywhere?

No. All conversion runs in your browser — nothing is uploaded. The Share link encodes your text into the URL itself, so only someone you give the link to can see it.

Related text & data tools

Copied!