Python uses snake_case. JavaScript uses camelCase. SQL columns use snake_case. JSON keys usually use camelCase. CSS classes use kebab-case. Every language and convention has its own rule — and the moment you move data or code across a boundary, you are renaming things.
The online case converter handles all eight naming conventions in one tool. Paste the identifier, click the target case, copy the result.
The snake_case ↔ camelCase Problem
This is the most common naming convention mismatch in web development:
-
Backend (Python, Ruby, SQL):
user_first_name,created_at,order_total -
Frontend / API response (JavaScript, JSON):
userFirstName,createdAt,orderTotal
When you write a Python API and return a JSON response, you either use a serialization library that handles the conversion automatically, or you rename manually. When you are copying field names from a database schema into a TypeScript interface, you rename manually. When you are writing test fixtures that map SQL column names to JavaScript objects, you rename manually.
These are short tasks that break concentration. The case converter eliminates them.
Converting snake_case to camelCase
Paste your identifier — or a block of them — and click camelCase:
user_first_name → userFirstName
created_at → createdAt
order_total → orderTotal
max_retry_count → maxRetryCount
The tool splits on underscores, capitalizes the first letter of each token after the first, and joins them without separators. It also handles already-mixed input: if your source is PascalCase or kebab-case, the same split logic applies.
Converting camelCase to snake_case
Click snake_case on the same input:
userFirstName → user_first_name
createdAt → created_at
orderTotal → order_total
maxRetryCount → max_retry_count
Under the hood, the tool detects case transitions (a lowercase letter followed by uppercase) and inserts underscore separators. It handles runs of consecutive uppercase letters correctly — HTMLParser becomes html_parser, not h_t_m_l_parser.
When You Need kebab-case
CSS classes, HTML data- attributes, URL slugs, and CLI flags all use kebab-case. It is the same as snake_case but with hyphens instead of underscores:
user_first_name → user-first-name
createdAt → created-at
PageTitle → page-title
Note that kebab-case identifiers cannot be used as variable names in most programming languages — the hyphen parses as subtraction. It is exclusively for markup, stylesheets, URLs, and command-line interfaces.
All 8 Conversions
| Case | Output example | Where it's used |
|---|---|---|
| camelCase | userFirstName |
JS/TS variables, JSON keys, React props |
| PascalCase | UserFirstName |
Classes, React components, TypeScript interfaces |
| snake_case | user_first_name |
Python, Ruby, SQL, file names |
| kebab-case | user-first-name |
CSS classes, URLs, HTML attributes |
| UPPER_SNAKE_CASE | USER_FIRST_NAME |
Constants, environment variables |
| Title Case | User First Name |
Display labels, headings |
| UPPERCASE | USER FIRST NAME |
Constants without underscores |
| lowercase | user first name |
Normalizing input |
All eight are available in the same view — paste once, click any conversion, copy the result.
Multi-Line Batch Conversion
The tool processes the entire textarea content. If you paste a list of identifiers, all of them convert at once:
user_id
created_at
updated_at
is_active
Click camelCase and the entire block becomes:
userId
createdAt
updatedAt
isActive
Useful when you need to rename a full set of database columns into a TypeScript interface, or convert an entire Python dataclass into a JavaScript object schema.
Common Cross-Language Scenarios
SQL columns → TypeScript interface: Copy column names from a migration file (user_id, email_verified, last_login_at) → paste → click camelCase → paste into your interface definition.
Python dataclass → JSON serializer config: Rename Python snake_case fields to camelCase JSON output keys when building a REST API response without a serialization library.
API response → Python model: Pull camelCase keys from a third-party JSON API and convert them to snake_case for your Python models.
Environment variable names → code constants: DATABASE_MAX_CONNECTIONS → databaseMaxConnections when you need a JavaScript config object from env var naming.
Related Tools
- online url query string parser — extract utm params and decode any url — kebab-case slugs and UTM parameters often need decoding alongside renaming
- minify javascript css and html online free — after renaming variables across a file, minify the output before deploying
- format and validate json online free — inspect camelCase JSON keys from API responses before mapping them to snake_case models
Convert snake_case to camelCase free — all 8 naming conventions, paste and click →
Top comments (0)