Convert text between UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, and kebab-case.
Eight buttons, one phrase, and the gaps between them are where identifiers go wrong. Title Case and Sentence case look the same until you reach the second word; camelCase and PascalCase differ by exactly one character. The Case Converter prints a worked example under every button, so orderLineItem sits under camelCase and order_line_item under snake_case, and you choose by looking instead of by recalling a name.
What makes it survive code rather than prose is the tokenizer that runs first. It inserts a break wherever a lowercase letter is followed by an uppercase one, then treats underscores and hyphens as spaces. So userProfileImage, user_profile_image and user-profile-image all decompose to the same three words, and any of them converts cleanly into any other. Moving a variable name between a Python service and a JavaScript client is one paste each way.
Two of the eight deliberately skip that step. UPPER CASEand lower case transform the raw string, which is why they leave your spacing exactly as you typed it while the other six normalise it. Output tracks the input as you type, Copyreads Copied! for 1.8 seconds after a successful write, and nothing is transmitted off the page.
Paste order line item and step across the buttons:
ORDER LINE ITEM; lower case gives order line item.Order Line Item; Sentence case capitalises only the first word, Order line item.orderLineItem; PascalCase raises the leading letter too, OrderLineItem.order_line_item; kebab-case gives order-line-item.parse XML file returns parseXmlFile, not parseXMLFile, because every word is lowercased before its first letter is raised.HTTPServer stays a single token and lands in snake_case as httpserver.address line 2 yields addressLine2 and address_line_2.., ! or ?, which turns e.g. see appendix into E.G. See appendix.report__final--v3 reads as three words and converts to reportFinalV3.