How to use
- Paste text in any style — a sentence, camelCase, snake_case, anything.
- Every style is converted at once; there is nothing to select.
- Click copy on the row you want.
About naming styles
Every naming convention is the same two decisions: what separates the words, and how each
word is capitalised. snake_case joins with underscores and lowercases everything;
PascalCase joins with nothing and capitalises each word. Once text has been split into
words, converting between any two styles is mechanical.
Splitting is the part that is actually hard, and the case that separates a working converter
from a broken one is the acronym. HTTPResponse contains two words, but there is no
lowercase-to-uppercase transition between HTTP and Response to mark the boundary — the
transition is uppercase-to-uppercase, which occurs inside HTTP as well. The rule that works
is to break before an uppercase letter that is followed by a lowercase one, which puts the
boundary in exactly the right place and leaves the acronym intact.
Where each style is used is largely convention rather than technical necessity. Python and
Rust use snake_case for functions and variables; JavaScript and Java use camelCase for
those and PascalCase for classes; CSS and URLs favour kebab-case, partly because
underscores were historically awkward in URLs and can be hidden by underlining. Constants are
CONSTANT_CASE almost everywhere. Following the local convention matters more than any
argument about which is better — a codebase mixing styles costs more attention than either
style alone.
Frequently asked questions
How are acronyms handled?
They are kept as a unit. HTTPResponse splits into HTTP and Response, giving http_response in snake_case. A naive converter that breaks at every uppercase letter produces h_t_t_p_response, which is why acronym handling is the main thing separating case converters that work from ones that do not.
Can I convert from any style, not just plain text?
Yes. The tool splits the input into words first, so it does not matter whether you paste camelCase, snake_case, kebab-case or a normal sentence. Converting between any two styles works in both directions.
Why does UPPERCASE keep my punctuation when snake_case does not?
Because they are different operations. UPPERCASE and lowercase transform your text as written — punctuation, line breaks and all. The programming styles re-split the text into words and rejoin them, which necessarily discards anything that is not a word character. Both behaviours are what you want from their respective styles.
What is the difference between camelCase and PascalCase?
Only the first letter. camelCase starts lowercase (userName), PascalCase starts uppercase (UserName). The conventions differ by language and by what is being named: JavaScript and Java use camelCase for variables and PascalCase for classes, while Go uses PascalCase to mark an identifier as exported.
Which words stay lowercase in Title Case?
Short function words — articles, conjunctions and short prepositions such as a, an, the, of, and, to, in — unless they fall first or last, where they are always capitalised. This follows the common simplification of the Chicago Manual style. Different style guides disagree on the details, particularly around prepositions of four or more letters.
Does this work with non-English text?
Accented Latin script works correctly — caféMenu splits into café and Menu. Chinese, Japanese and Korean have no case distinction, so those characters pass through unchanged.