camelCase / snake_case Converter

Convert names between camelCase, PascalCase, snake_case, SCREAMING_SNAKE_CASE, kebab-case and dot.case โ€” a whole list at a time.

Detected input format: โ€”

No uploads. Your files stay on your device.

Free forever, no sign-up, no cookies. Buy me a coffee

How it works

Paste one or more identifiers โ€” one per line โ€” pick a target style and the conversion happens as you type. The converter first splits each name into words: it breaks on underscores, hyphens, dots and spaces, and on camelCase humps, so parseHTTPResponse becomes parse + HTTP + Response and converts cleanly to parse_http_response instead of the mangled parse_h_t_t_p_response that naive converters produce. Those words are then re-joined in the style you chose: camelCase, PascalCase, snake_case, SCREAMING_SNAKE_CASE, kebab-case or dot.case.

Leading underscores on private members are kept by default, blank lines stay blank so a pasted list keeps its shape, and anything with no letters or digits is left untouched rather than silently dropped. Everything runs in your browser with plain JavaScript โ€” no uploads, no ads, and safe for code you cannot paste into a random website.

Frequently asked questions

How do I convert camelCase to snake_case?

Paste your names into the input box โ€” one per line โ€” and choose snake_case under "Convert to". Each name is split into words on camelCase humps and re-joined with underscores in lowercase, so helloWorldExample becomes hello_world_example. The result updates as you type, and you can copy or download the whole list.

What is the difference between camelCase and PascalCase?

Both join words without separators, but camelCase starts with a lowercase letter (userFirstName) while PascalCase capitalises the first word too (UserFirstName). By convention camelCase is used for variables, fields and methods in languages like Java and JavaScript, and PascalCase for classes, types and React components. This converter produces either style from the same input.

Does the converter handle acronyms like parseHTTPResponse?

Yes. The tokenizer detects runs of capitals, so parseHTTPResponse splits into parse + HTTP + Response and converts to parse_http_response instead of the mangled parse_h_t_t_p_response that naive converters produce. Leading underscores on private members such as _privateValue are preserved too, unless you turn that option off.

Report a bug