Text Tools
Change, compare, generate and count text. Input is processed in your browser.
Text editing
Word & Character Counter
Count characters, words, sentences, paragraphs, lines and bytes as you type. Check a length limit, see reading time and the most frequent words.
Case Converter
Convert names line by line, or rename every key in a JSON document, between camelCase, PascalCase, snake_case, kebab-case and more.
Text Diff
Compare two code or text snippets line by line, with added and removed lines highlighted.
Lorem Ipsum Generator
Generate placeholder text in Latin, Korean, Japanese or Chinese for mock-ups, layouts and test data.
Slug Generator
Turn titles into clean URL slugs and remove accents from any Latin-script language: ç, ğ, ı and ş for Turkish, ä, ö, ü and ß for German, đ for Vietnamese, ø, æ and more.
Language & script converters
Number to Words
Write an amount or a number in words in 14 languages, each by its own rules: US checks, British cheques, Korean won, Chinese 大写, Japanese 大字, Russian сумма прописью, Thai baht and more.
Full-Width ↔ Half-Width
Convert full-width letters, digits, symbols, spaces and katakana to half width or back, and hiragana to katakana. Half-width katakana with ゙ and ゚ are joined correctly (ガ ↔ ガ).
Remove Vietnamese Accents
Turn Vietnamese text with diacritics into plain letters, with đ written as d, in capitals for forms or as a URL slug. You can also remove only the tone marks.
Korean Name Romanization
Write a Korean name in Roman letters by the official romanization rules, syllable by syllable as on passports, and see which spellings Korean passport holders use for each syllable.
Cyrillic to Latin
Transliterate Russian names, addresses and text into Latin letters by the ICAO table for passports or by the BGN/PCGN system used for place names.
Simplified ↔ Traditional Chinese
Convert Simplified Chinese to Traditional Chinese for Taiwan or Hong Kong, or Traditional to Simplified, with the OpenCC dictionaries that choose characters by the whole word.
Speech & subtitles
Choosing the right text tool
The Case Converter is meant for identifiers rather than prose. Paste names such as user_name or XMLHttpRequest, one per line, and convert them to camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE or five other styles, or rename every key of a JSON document while its values stay as they are. It splits the input into words and drops punctuation, so it is less suited to whole sentences. Acronyms are normalized, so userID becomes userId in camelCase, and if two keys in one JSON object would end up with the same name, nothing is converted and the clash is reported.
Text Diff compares two versions line by line, for example a configuration file before and after an edit, and marks the added and removed lines. It does not highlight changes within a line, it counts whitespace differences as changes, and it treats Windows and Unix line endings as equal. The Lorem Ipsum Generator fills mock-ups with placeholder paragraphs, sentences or words in Latin, Korean, Japanese or Chinese; the Korean, Japanese and Chinese options combine common words at random, so they are not grammatical. The Word & Character Counter suits essays, posts and form fields with a length limit, and also estimates reading and speaking time.
Number to Words writes an amount or a number in words for checks, invoices and contracts. It starts with the conventions of the page language and offers 13 more, each with its own rules: US checks with cents as 56/100, the British "and" and "only", euros and céntimos, Mexican pesos 00/100 M.N., Chinese 人民币大写, Japanese 大字, Russian сумма прописью and Thai baht. It writes up to 999,999,999,999.99 and never rounds; the guide on writing amounts in words explains the rules behind each format.
Three converters change the characters themselves. The Full-Width ↔ Half-Width converter turns ABC123 into ABC123 and back, joins half-width katakana such as ガ into ガ and converts hiragana to katakana. Remove Vietnamese Accents writes Vietnamese without marks (Nguyễn Văn Đức → Nguyen Van Duc), with đ as d, or removes only the tone marks. The Slug Generator turns titles into URL slugs and removes accents from Turkish, German and other Latin-script text following the ICAO passport table; Russian letters are written in Latin by the ICAO table, and Korean, Japanese and other scripts are kept or removed.
Two more tools write names in Latin letters. The Korean Name Romanizer follows the official romanization rules and the passport rule of writing every syllable on its own (홍길동 → Hong Gildong), offers the surname spelling most Korean passport holders use (Kim, Lee, Park) and shows, syllable by syllable, the spellings published by Korea's Ministry of Foreign Affairs. The Cyrillic to Latin converter transliterates Russian by the ICAO table for passports (Юлия → Iuliia) or by the BGN/PCGN system for place names (Yuliya).
The Simplified ↔ Traditional Chinese converter changes Chinese text between the two scripts with the OpenCC dictionaries. It reads whole words, so 头发 becomes 頭髮 and 发展 becomes 發展, writes the forms used in Taiwan or Hong Kong, can also replace regional words such as 软件 with 軟體, and converts Traditional text back to Simplified. Its dictionaries are downloaded from leedybox.com the first time you use it.
Audio to Text transcribes a recording or the sound of a video with the Whisper speech recognition model. Choose the language or let it be detected, and choose base, which is faster, small, which makes fewer mistakes, especially outside English, or, in browsers with WebGPU, large-v3-turbo, the most accurate, which runs on the graphics processor. The text appears as the recording is processed, and you can save it as plain text or as SRT and VTT subtitles. The engine and the model, about 90, 250 or 750 MB, are downloaded from leedybox.com the first time; the recording itself stays in your browser.
All twelve tools run as JavaScript in your browser. The text you enter is not sent to LeedyBox and is not saved by the page. In browsers that support Unicode text segmentation, the counter treats an emoji or an accented letter as one character and finds words in Chinese, Japanese and Thai with the browser's word segmentation, so a website or app with its own counting rules can report a different number. Text Diff matches identical lines at the start and end directly and runs its full comparison on the part in between; if that part is too large to process in the browser, for example more than 2,000 lines in each version, it shows no result and suggests comparing smaller parts.
The guide on counting words and characters explains graphemes, bytes and emoji in more depth, and why tools can count the same text differently.