Diez estilos de conversión. Un clic.
Cambia el texto entre MAYÚSCULAS, minúsculas, Tipo Título, Tipo oración, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE y dot.case con un solo clic. Cada conversión se ejecuta localmente en tu navegador. Tu texto nunca sale de la página.
El uso de mayúsculas y minúsculas es un tema engañosamente complejo. «Hello World», «HELLO WORLD», «hello_world» y «helloWorld» contienen las mismas palabras, pero pertenecen a mundos distintos: el nombre de una tabla de base de datos, una clase de CSS, una variable de JavaScript, un titular publicado. Acertar con el estilo importa porque las convenciones las imponen los linters, las expectativas de quien lee y los estándares de URL. Esta herramienta toma cualquier texto y lo reescribe exactamente en el estilo que necesitas, y resuelve por el camino los límites entre palabras, las siglas, los números y la puntuación.
La herramienta admite diez estilos, agrupados en tres familias.
Los estilos de presentación tienen que ver con cómo lee el texto una persona. MAYÚSCULAS pone en mayúscula cada letra; se usa para énfasis, siglas, señalización y constantes. minúsculas escribe cada letra en su forma pequeña; es lo habitual en las URL, los hashtags y la escritura informal. Tipo Título pone en mayúscula la primera letra de cada palabra significativa y es el estándar de los títulos de libros y artículos en inglés, con reglas sobre qué palabras cortas (a, the, of) quedan en minúscula. Tipo oración pone en mayúscula solo la primera letra de cada oración más los nombres propios, y se ha vuelto la opción por defecto para el texto corrido, las etiquetas de botones y la interfaz moderna de Google, Apple y Microsoft.
Los estilos de programación tienen que ver con cómo se escriben los identificadores en el código. camelCase usa minúscula en la primera letra y mayúscula en cada palabra siguiente, sin separadores (getUserName); es el estándar para variables y funciones en JavaScript, Java, Swift y la mayoría de los lenguajes de la familia C. PascalCase es igual, pero también pone en mayúscula la primera letra (UserProfile); se usa para nombres de clases en la mayoría de los lenguajes orientados a objetos, componentes de React y tipos de TypeScript. snake_case escribe todo en minúscula unido por guiones bajos (user_name); es el estándar para variables en Python y Ruby, nombres de columnas de bases de datos y claves de YAML. CONSTANT_CASE, también llamado SCREAMING_SNAKE_CASE, escribe todo en mayúscula unido por guiones bajos (MAX_RETRY_COUNT); se usa para constantes, variables de entorno y nombres de macros en casi todos los lenguajes.
Los estilos de URL y rutas tienen que ver con identificadores seguros en las URL y los argumentos de línea de comandos. kebab-case usa minúsculas unidas por guiones (user-profile); es el estándar para los slugs de URL, los nombres de clases de CSS, las banderas de línea de comandos y los atributos de HTML. dot.case usa minúsculas unidas por puntos (app.user.profile); se usa para agrupar variables de entorno por espacios de nombres y en algunos formatos de archivos de configuración.
Un identificador con el estilo equivocado no es un problema de estética. Muchas veces es un error grave.
En el código, mezclar estilos dentro de un proyecto provoca advertencias del linter o rompe la compilación. La mayoría de los lenguajes distinguen los identificadores según las mayúsculas, así que userName y username son dos variables distintas que pueden taparse o entrar en conflicto. Los slugs de URL que mezclan mayúsculas pueden fallar en las comparaciones de igualdad en servidores que distinguen mayúsculas, lo que genera enlaces rotos que funcionan en staging pero dan 404 en producción. Los nombres de columnas con el estilo equivocado pueden exigir comillas en cada consulta, algo que la mayoría de los ORM no hacen por defecto.
En la escritura, las mayúsculas marcan el tono. TODO EN MAYÚSCULAS en el texto corrido se lee como un grito. El tipo oración en un titular formal se lee como descuido. El tipo título en la etiqueta de un botón se ve anticuado al lado del tipo oración, que hoy es lo habitual en iOS, Android y la mayoría de las apps web modernas.
Un conversor ingenuo solo cambia letras, pero el texto real esconde trampas. Así las resuelve esta herramienta.
Siglas. La cadena «URL slug parser» necesita un trato distinto en tipo título («URL Slug Parser») que en camelCase. Las guías de estilo modernas (la de Google, la de Microsoft y la popular guía de JavaScript de Airbnb) recomiendan tratar las siglas como una sola palabra en camelCase, lo que produce urlSlugParser en vez de uRLSlugParser. PascalCase sigue la misma regla: UrlSlugParser, no URLSlugParser.
Números. Los dígitos se conservan sin cambios, pero se tratan como límites entre palabras. «Article 2 Reading» se convierte en article2Reading en camelCase, donde el 2 actúa como separador. Esto coincide con la convención de JavaScript, Python, Go y la mayoría de los lenguajes que admiten dígitos en los identificadores.
Puntuación. Las comas, los puntos y los caracteres especiales se descartan en los estilos de programación (camelCase, PascalCase, snake_case, kebab-case), porque los identificadores no pueden contenerlos. Se conservan en los estilos de presentación (MAYÚSCULAS, minúsculas, Tipo Título, Tipo oración).
El estilo existente se usa como pista. «iPhone» se queda como «iPhone» en Tipo Título en vez de volverse «Iphone». La i minúscula seguida de la P mayúscula señala una palabra compuesta deliberada, y la herramienta la conserva. Lo mismo ocurre con iOS, JavaScript y otras marcas parecidas.
Estos tres son los estilos de programación más comunes, y elegir entre ellos depende casi por completo del ecosistema, no del gusto personal.
Si escribes JavaScript, TypeScript, Java, Swift, Kotlin o C#, usa camelCase para variables y funciones, y PascalCase para clases y tipos. Si escribes Python, Ruby, Rust o PHP, usa snake_case para variables y funciones, y PascalCase para clases. Si escribes CSS, nombres de clases al estilo BEM, slugs de URL, banderas de línea de comandos o atributos data-* de HTML, usa kebab-case. Si escribes constantes, variables de entorno o macros de tiempo de compilación en cualquier lenguaje, usa CONSTANT_CASE.
La regla más confiable: sigue la convención del archivo o el proyecto que estás editando. Un archivo de Python que usa camelCase para las variables se ve mal aunque cada nombre sea técnicamente válido; un archivo de JavaScript que usa snake_case disparará advertencias de ESLint en cada commit.
No conviertas identificadores que ya existen. Si conviertes a camelCase una columna de base de datos llamada user_id, obtienes userId. Pero la columna sigue siendo user_id. Asegúrate de que la conversión sea intencional y de que todo lo que depende de ese nombre (tu ORM, tus migraciones, tus reportes) maneje el nombre nuevo.
Las reglas del Tipo Título varían según la guía de estilo. AP, Chicago, MLA y APA tienen reglas algo distintas sobre qué palabras cortas se ponen en mayúscula. Esta herramienta sigue la convención de AP: pon en mayúscula las palabras de cuatro letras o más; pon en mayúscula «is», «are», «was», «were»; deja en minúscula «a», «an», «and», «but», «for», «of», «the» salvo que sean la primera o la última palabra. Si necesitas otra convención, haz una revisión final a mano.
Los espacios se colapsan. Los espacios y las tabulaciones múltiples se normalizan a un solo límite entre palabras. Si necesitas conservar los espacios exactos, usa la herramienta Buscar y Reemplazar.
Escribe o pega texto en el cuadro de entrada. La herramienta detecta los límites entre palabras separando por espacios, puntuación y transiciones de mayúsculas existentes. La S en userId se trata como un límite. Cada palabra detectada se reescribe según el estilo que elijas. La conversión es instantánea: sin botón de enviar, sin petición de red, sin enviar datos a ningún lado. La salida aparece de inmediato y se actualiza sola si cambias la entrada o el estilo.
Para quienes programan. Usa el conversor como un ayudante rápido de refactorización. Pega una lista de nombres de campos de Python en snake_case, haz clic en camelCase y ya tienes los miembros de tu interfaz de TypeScript. O pega las claves de un objeto de JavaScript y haz clic en snake_case para obtener una dataclass de Python.
Para quienes escriben. Pega un borrador de titular en cualquier estilo y prueba Tipo oración frente a Tipo Título para ver cuál encaja con tu guía de estilo. La mayoría de los medios modernos (The New York Times es la gran excepción) han pasado al tipo oración en los titulares en línea porque se lee más rápido y combina con un tono conversacional.
Para los slugs de URL en particular. Usa el Generador de Slugs dedicado en vez de kebab-case aquí. También maneja los signos diacríticos, la transliteración de caracteres no latinos y los separadores consecutivos, cosas que el conversor de mayúsculas no hace.
El Tipo Título sigue una guía de estilo. Las palabras cortas como «of», «the» y «a» quedan en minúscula salvo que abran o cierren el título. El Tipo Capitalizado (a veces llamado Start Case) pone en mayúscula cada palabra sin importar la longitud. Esta herramienta produce Tipo Título.
Sí. Las siglas como URL, API, JSON y HTML se tratan como una sola palabra en camelCase y PascalCase, lo que produce urlSlug en vez de uRLSlug. En Tipo Título, las siglas que ya vienen completamente en mayúscula se conservan.
Sí. La herramienta detecta los separadores existentes (guiones bajos, guiones, puntos) como límites entre palabras, así que puedes convertir de cualquier estilo a cualquier otro. Pega user_profile_data y haz clic en Tipo Título para obtener «User Profile Data».
La herramienta usa el mapeo de mayúsculas de Unicode, así que los caracteres acentuados (é ↔ É, ü ↔ Ü), el cirílico, el griego y la mayoría de las demás escrituras bicamerales funcionan bien. Las lenguas sin distinción de mayúsculas (chino, japonés, árabe, hebreo) quedan sin cambios en las operaciones de mayúsculas, pero igual pasan por la lógica de separadores y límites entre palabras.
Porque nadie necesita escribir rAnDoM cAsE fuera de las bromas de internet, y agregarla recargaría la interfaz por una función que quiere el 0,1 % de la gente. Si de verdad la necesitas, lo haces a mano más rápido de lo que tardarías en encontrar el botón.
No. La conversión se ejecuta por completo en tu navegador con JavaScript. No se envía nada a ningún servidor, no se registra nada, no se guarda nada. Puedes comprobarlo abriendo la pestaña de red de tu navegador y viendo cómo se queda vacía mientras conviertes.