Text case converter
Fix capitalization without uploading, signing in, or waiting for a server.
Your text
Stays in this browser tab
Result
Original text stays unchanged
Choose the result
Sends these settings only. Your text stays on this device and is never part of the link.
About this text case converter
Paste or type text to convert between camelCase, snake_case, kebab-case, PascalCase, CONSTANT_CASE, Title Case, Sentence case, lowercase, and UPPERCASE. Conversions execute in real time, handling acronyms and identifier punctuation without server calls.
This developer and copywriting tool transforms variable names, database column identifiers, and editorial titles across nine standard casing conventions. It splits phrases accurately on spaces, underscores, hyphens, and existing camelCase boundaries, preserving acronyms (like HTTP or API) and numeric indices without mangling word structures.
Step by step
- 1Enter text to convertType or paste code identifiers, article titles, or prose into the input editor.
- 2Select target case formatChoose among camelCase, snake_case, kebab-case, PascalCase, CONSTANT_CASE, Title Case, Sentence case, or UPPER/lower.
- 3Inspect converted outputReview the formatted text in real time with instant character count, word count, and line count statistics.
- 4Copy converted textClick Copy to clipboard to grab the result for pasting into code editors, database schemas, or documentation.
Programming casing conventions explained
camelCase formats words with lowercase initial letters (userName). PascalCase capitalizes all word initials (UserProfile). snake_case joins lowercase words with underscores (user_account_id), typical in Python and SQL. kebab-case joins words with hyphens (user-profile-header), standard in CSS and URLs. CONSTANT_CASE joins uppercase words with underscores (MAX_BUFFER_SIZE), standard for constants.
Accurate word boundary segmentation
Simple regex transformations often split words incorrectly on acronyms (turning XMLParser into x-m-l-parser). Our engine applies boundary-aware tokenization that preserves uppercase acronym blocks while correctly identifying transition boundaries before subsequent words.
Editorial formatting: Title Case and Sentence Case
In editorial and publication workflows, Title Case capitalizes the principal words while maintaining lowercase styling for coordinating conjunctions, articles, and short prepositions (such as in, on, the, and, of). Sentence case capitalizes only the first letter of each sentence and proper nouns, providing publication-ready copy for headings and documentation.
Delimiter preservation and Unicode letter handling
Real-world text often mixes punctuation, numbers, and accented characters. Our casing engine handles accented Latin characters (such as é, ü, ñ) gracefully, recognizing Unicode uppercase and lowercase properties rather than falling back to ASCII-only character ranges. It preserves structural delimiters like slashes and periods when converting directory paths or nested configuration keys.
Batch line transformation and multi-cursor workflows
When refactoring configuration files, localization dictionaries, or SQL migrations, developers frequently need to transform dozens of lines at once. Rather than converting values one at a time, you can paste entire multiline blocks into the editor. The engine splits input across newline boundaries and applies the selected casing rule consistently to every line, producing clean, uniform outputs ready for code reviews.
Zero upload security guarantee
Every response from this site is served with a Content Security Policy whose connect-src directive is set to none. That is not a promise in marketing copy; it is an instruction to your browser, and the browser is the one enforcing it. While this page is open it cannot open a connection to anywhere — not to this site, not to anyone else — so there is no path by which your document could be uploaded, not by a bug, not by a future change, not by a script that should not be here. e2e/egress-proof.spec.ts asserts the served header and then tries to send data out by every route a page has and requires each attempt to be refused, and it runs on every build.
The second half of the guarantee is that the code has nowhere to send anything from. lib/tools/local-source-policy.test.ts reads every source file under lib/tools, workers, components and app on every test run and fails the build if any of them contains fetch, XMLHttpRequest, WebSocket, EventSource, sendBeacon or a peer connection, or even a remote address written down in a comment. A tool here cannot acquire an upload by accident, because the file that would have to contain one cannot be committed.
Client-side processing limits
Computations run directly on your own device using WebAssembly, Web Workers, and modern browser APIs including Web Crypto and TextDecoder. There are no server queues, no background telemetry, and no temporary cloud files created. Large operations remain responsive by offloading heavy parsing and conversion tasks to dedicated worker threads, ensuring the browser UI never freezes during intensive document and data processing tasks.
Questions people ask
- Which programming cases are supported?
- Nine standard formats are supported: camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, Title Case, Sentence case, lowercase, and UPPERCASE.
- How are numbers and acronyms handled during conversion?
- Numbers are treated as boundary attachments without inserting unnecessary punctuation, and multi-letter acronyms (e.g. JSON, HTML) are preserved in Title and Pascal cases.
- Is there a limit on text length?
- Text inputs up to 2,000,000 characters can be processed in browser memory with zero UI latency or stutter.
- Is any pasted text sent to external servers?
- No. All transformations run entirely inside your browser tab under connect-src none Content Security Policies.
- Can this tool format entire source code files?
- While designed for identifiers, strings, and copy, pasting large code blocks will normalize all identifiers according to the selected case convention.