Short answer: paste the text and every form appears at once — camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, Title, Sentence and lower case, plus a URL slug. Each row has its own copy button.
Word splitting is the whole job
Converting between conventions is easy once you know where the words are. The hard cases aregetHTTPResponse (an acronym inside camelCase), SCREAMING_SNAKE,version2Ready (a digit boundary) and Café Menu (an accent). All four are handled by splitting on case transitions, digit boundaries and any non-alphanumeric run, then folding accents with Unicode NFD.
Which form belongs where
- camelCase — JavaScript and Java variables.
- PascalCase — types, classes and React components.
- snake_case — Python, SQL columns, JSON keys in some APIs.
- kebab-case — CSS class names, URL paths, file names.
- CONSTANT_CASE — environment variables and enum members.
- dot.case — configuration keys and event names.
- Title / Sentence — headings and prose.
Slug rules that actually matter
Lower case, hyphens, no trailing separator, and short enough to read. Truncation happens before the trailing separator is trimmed, so a cut at the limit never leaves a URL ending in a dash. Stop words are kept: removing "the" from a title changes the title, and a slug that no longer matches its page is worse than a long one.
Turning a title into a URL and need the rest of the pipeline? TheURL encoder handles the characters a slug cannot contain, and the regex tester is there when a naming rule needs enforcing in code.