Which case to use where
- camelCase — JavaScript variables, TypeScript, Java methods/fields.
userName. - PascalCase — classes, types, React components.
UserProfile. - snake_case — Python variables/functions, Ruby, SQL column names.
user_name. - CONSTANT_CASE (SCREAMING_SNAKE) — constants in C, C++, JavaScript.
MAX_RETRIES. - kebab-case — URLs, CSS class names, CLI flags, HTML attributes.
user-name. - UPPER-KEBAB — HTTP headers.
CONTENT-TYPE. - dot.case — package names in Java, config keys.
user.profile.name. - path/case — URL paths, filesystem.
user/profile/name. - Title Case — headings, book titles, article titles.
- sentence case — regular prose with just the first word capitalized.
Smart tokenization
This tool's tokenizer recognizes all common conventions as input. Paste fooBarBaz,
FooBarBaz, foo_bar_baz, foo-bar-baz, or foo.bar.baz —
all produce the same three tokens. Consecutive capitals are handled correctly: XMLParser
becomes xml and parser, not x and mlparser.
Bulk mode
Paste one item per line, turn on bulk mode, and every line converts independently. Useful for migrating variable names, converting CSV column headers, or mass-renaming.
Common case-conversion bugs
- Word boundaries — naive converters split "HTMLParser" into "h", "t", "m", "l", "parser" or join it as "Htmlparser". This tool uses the capital-followed-by-capital-then-lowercase heuristic to keep acronyms intact.
- Trailing separators —
"foo__bar"should tokenize tofoo,bar, not include an empty token. - Numbers —
"version2"is typically one token (version2)."v2API"isv2+api.
FAQ
Does this preserve Unicode characters?
Yes — ASCII-like tokenization with Unicode-preserving case transforms. Non-Latin scripts pass through.
Why does "alternating case" look slightly different than expected?
It alternates position-by-position in the final string (including spaces). If you want whole-word alternation, that's a different pattern — open an issue.
Related tools
- JSON Formatter — Format, validate, and beautify JSON online. 100% client-side — your data never leaves your browser.
- Regex Tester — Test regular expressions with live match highlighting and explanation.
- Word Counter — Count words, characters, sentences, paragraphs, and lines. Reading time estimate, char-limit indicators for X, LinkedIn, meta titles, and more.
- Lorem Ipsum Generator — Generate placeholder text — words, sentences, or paragraphs. Classic lorem ipsum plus alternatives (hipster, cupcake, pirate). HTML-wrapped output option.
Related articles
- 4 min readcamelCase — What It Is and Where to Use It in ProgrammingcamelCase capitalizes the first letter of each word except the first: helloWorld, getUserProfile. It's the standard for JavaScript variables, Java methods, and API JSON keys....
- 6 min readcamelCase vs snake_case — Which Naming Convention to Use and WhencamelCase and snake_case are the two dominant naming conventions in programming. Here's which language ecosystems use each, what the research says about readability, and how to...
- 4 min readKebab Case — What It Is and Where to Use kebab-caseKebab case uses hyphens between lowercase words: hello-world, user-first-name. It's the standard for CSS class names, URLs, HTML attributes, and npm package names. Here's where...
- 4 min readPascalCase — What It Is and Where to Use It in CodePascalCase capitalizes the first letter of every word with no separators: HelloWorld, UserProfile. It's the standard for class names, React components, TypeScript types, and C#...
- 6 min readProgramming Naming Conventions — camelCase, PascalCase, snake_case by LanguageDifferent programming languages have different naming convention standards. Here's the official naming convention for variables, functions, classes, and files in JavaScript,...
- 4 min readSnake Case — What It Is, When to Use It, and How to ConvertSnake case uses underscores between words in lowercase: hello_world, user_first_name. It's the standard naming convention for Python, SQL, and file names. Here's when to use...
Pillar
Part of Dev Productivity.
Written by Mian Ali Khalid. Last updated 2026-04-25.