You Might Also Like
Text Case Converter — camelCase, snake_case, PascalCase, kebab-case & 14 Formats
About this tool
Free Text Case Converter — Convert to camelCase, snake_case, PascalCase, kebab-case & 14 More Formats
Paste your text once and instantly see all 14 case conversions side by side — no switching between tools, no separate buttons, no waiting. Every format updates live as you type.
This tool covers every naming convention you will encounter in software development and content writing: camelCase for JavaScript variables and functions, PascalCase for React components and TypeScript types, snake_case for Python and database columns, SCREAMING_SNAKE_CASE for constants and environment variables, kebab-case for CSS classes and URL slugs, COBOL-CASE for HTTP headers and legacy systems, Train-Case for HTTP header formatting in Go, dot.case for package namespaces and config keys, Title Case for headings and UI labels, Sentence case for readable prose, UPPER CASE, lower case, alternating case, and inverse case.
The converter is smart about its input. If you paste existing camelCase or PascalCase text like getUserProfileData, it automatically splits on letter-case transitions — get, User, Profile, Data — so all output formats are correct. It also splits on underscores, hyphens, dots, and spaces, meaning you can paste from any source format and get accurate output in every target format.
Multi-line support means you can paste a whole list of identifiers — one per line — and every line gets converted independently. Paste 20 database column names and get all 14 case variants for all 20 names at once.
Pin your most-used cases to the top of the grid so they're always within reach. Use the ↑ Apply button to feed any converted output back into the input for chaining conversions. Everything runs in your browser — no server, no data sent, works offline.
Features
- All 14 case formats shown simultaneously — paste once and see every conversion without switching between tools or clicking separate buttons
- camelCase — splits on spaces, hyphens, underscores, dots, and existing camelCase/PascalCase boundaries; used in JavaScript, TypeScript, Java, Swift, and Dart
- PascalCase — same splitting logic as camelCase but capitalizes the first word; used for class names, React components, and TypeScript interfaces
- snake_case and SCREAMING_SNAKE_CASE — underscore-separated lowercase and uppercase; used in Python, Ruby, Rust, SQL, and environment variables
- kebab-case and COBOL-CASE — hyphen-separated lowercase and uppercase; used in CSS, URLs, npm packages, and HTTP header names
- Train-Case, dot.case — capitalised-hyphen and dot-separated formats for HTTP headers, package namespaces, and config keys
- Title Case and Sentence case — for headings, article titles, UI labels, and properly capitalised prose
- UPPER CASE, lower case, alternating case, inverse case — utility transformations for content editing and creative text effects
- Smart input splitting — automatically detects and splits camelCase and PascalCase input so conversions are correct when pasting existing code identifiers
- Multi-line support — converts each line independently; paste a batch of variable names and get all 14 formats for the entire list at once
- Pin cases to top — ⊹ pin your most-used formats so they appear first in the grid on every visit
- Apply back to input — ↑ button feeds any converted output back into the input for chaining transformations
How to Use
Type or paste your text into the large input field at the top. All 14 case conversions appear instantly in the card grid below — no button press required. Each card shows the converted output, a colour-coded label, and an example. Click "Copy" on any card to copy that format to your clipboard. Use the filter input on the right of the toolbar to quickly find a specific case by name (e.g., type "snake" to show only snake-related formats). Click ⊹ to pin a case card to the top of the grid — useful if you always need camelCase or snake_case within reach. Click ↑ to apply a converted output back into the input field for further transformation. Use "Paste" to pull clipboard text directly into the input, "Sample" to load example text, or "Clear" to reset. The word and character count update live in the header.
Common Use Cases
Frequently Asked Questions
Paste your text into the input field at the top of this converter. All 14 case formats are shown simultaneously in the grid below — find the camelCase card and click "Copy" to copy the converted text to your clipboard. camelCase joins words together with no separator and capitalizes every word except the first: "hello world" becomes "helloWorld". The converter automatically handles text from any source — it splits on spaces, hyphens, underscores, dots, and even detects existing camelCase or PascalCase boundaries.
camelCase starts with a lowercase letter and capitalizes each subsequent word: helloWorld. It is the default naming convention for variables and functions in JavaScript, Java, Swift, Kotlin, and Dart. PascalCase (also called UpperCamelCase) capitalizes every word including the first: HelloWorld. It is used for class names, component names in React, and type names in TypeScript and C#. snake_case separates words with underscores and uses all lowercase: hello_world. It is the standard for variables and functions in Python, Ruby, and Rust, and for database column names in SQL.
kebab-case (also written as "kebab case" or "spinal case") separates words with hyphens and uses all lowercase: hello-world. It is the standard for CSS class names, HTML attributes, URL slugs, and file names in web projects. For example: a CSS utility class might be .flex-center, a URL might be /blog/getting-started-with-react, and a package name in npm uses kebab-case. Kebab-case is invalid in most programming languages as a variable or function name because the hyphen is interpreted as a minus operator — it is primarily a web and filesystem convention.
SCREAMING_SNAKE_CASE (also called CONSTANT_CASE or UPPER_SNAKE_CASE) uses all uppercase letters with underscores between words: HELLO_WORLD. It is the universal convention for constants, environment variables, and compile-time configuration values across almost every programming language. Examples: MAX_RETRIES = 3, API_BASE_URL, NODE_ENV = "production", HTTP_PORT = 8080. In Python, Java, JavaScript, C, C++, Go, and Rust, constants defined at the module or global scope use SCREAMING_SNAKE_CASE. Environment variables in .env files and shell scripts also follow this convention.
Paste your camelCase text (e.g., "getUserProfile") into the input field. The converter automatically detects camelCase word boundaries by splitting on transitions between lowercase and uppercase letters. The snake_case card in the grid shows the converted result: "get_user_profile". Click "Copy" to copy it. The same input simultaneously produces all other formats — PascalCase, kebab-case, SCREAMING_SNAKE_CASE, and more — so you can switch between naming conventions for the same identifier without re-typing.
Title Case capitalizes the first letter of every word: "Hello World". It is used for article headings, page titles, button labels, navigation items, and book titles. This converter capitalizes every word including short conjunctions and prepositions, which is appropriate for UI labels and headings. Academic and journalistic style guides (APA, Chicago, AP) define slightly different rules — for example, short prepositions like "in", "on", and "at" are typically not capitalized in headlines — but for most web and UI purposes, capitalizing every word produces consistent, readable results.
COBOL-CASE (also called screaming kebab case or UPPER-KEBAB-CASE) uses all uppercase letters separated by hyphens: HELLO-WORLD. It gets its name from the COBOL programming language, where identifiers historically used this format. Today it appears as HTTP header names (Content-Type, X-Request-ID, Accept-Language), in some legacy enterprise systems, and occasionally in configuration file keys. The Train-Case variant (Hello-World) is used specifically for HTTP headers in Go's http package, where it distinguishes canonically formatted header keys.
Yes — the converter handles multi-line input. Each line is converted independently so line breaks are preserved in the output. For example, if you paste a list of database column names like "user_first_name", "email_address", "created_at" with each on its own line, the camelCase output will show "userFirstName", "emailAddress", "createdAt" — one per line. This is useful when renaming a batch of variables, converting a list of API field names between conventions, or reformatting a set of CSS class names. Pin your most-used case formats to the top of the grid using the ⊹ button for faster access.