How to use
- Type or paste one or more strings, one per line.
- See every conversion at once in the cards next to the input.
- Click Copy on the format you need.
Use cases
- Mapping snake_case database columns to camelCase TypeScript properties.
- Producing constant and environment variable names in CONSTANT_CASE.
- Creating slugs and file names in kebab-case.
- Normalizing lists of i18n keys or form field names.
Technical concepts
How words are detected
Text is split into words at spaces, underscores, hyphens, dots and also at lowercase-to-uppercase transitions. Acronyms are kept as one word: XMLHttpRequest becomes xml, http and request. Accented letters are recognized as letters.
Conventions by language
JavaScript and Java use camelCase for variables and PascalCase for classes. Python, Ruby and Lua use snake_case. CSS, URLs and npm package names use kebab-case. Constants and environment variables use CONSTANT_CASE (also called SCREAMING_SNAKE_CASE).
Frequently asked questions
Are numbers treated as separate words?
Yes. base64Encoder becomes base_64_encoder in snake_case and back to base64Encoder in camelCase.
Can I convert many names at once?
Yes. Each input line is converted independently, keeping the same order in the output.