Cuadro de entradas
El cuadro de Entradas contiene la lista entre la que elige la ruleta — un elemento por línea, con un contador en vivo que muestra el número de filas no vacías. Cada entrada ocupa un arco de 360°/N de la ruleta, por lo que la probabilidad de selección es exactamente 1/N, independientemente de la longitud o la posición. No hay límite superior salvo la capacidad del localStorage del navegador (típicamente 5 MB por origen).
Truco: pega una columna de hoja de cálculo para añadir muchas entradas a la vez.
Mezclar
Reordena aleatoriamente todas las entradas. Útil para cambiar los vecinos en la ruleta entre giros o eliminar el orden de una lista ya ordenada.
Mezclar no cambia la probabilidad: cada entrada sigue con 1/N.
Ordenar
Ordena las entradas alfabéticamente (A–Z). Útil para limpiar una lista pegada larga o agrupar entradas similares antes de compartir la ruleta.
Igual que Mezclar, ordenar solo cambia la visualización, no la equidad.
Limpiar
Elimina todas las entradas en un clic. La ruleta queda vacía y puedes empezar una lista nueva.
Las listas borradas no se pueden recuperar — comparte el enlace antes si quieres conservarla.
Girar (Rotar la ruleta)
Inicia la animación de rotación, fijada en 3.500 ms con una curva de desaceleración easeOutQuart para garantizar una sensación coherente y equidad en el resultado. Dos disparadores: el botón Girar bajo la ruleta y un clic directo sobre el canvas. El cuadro de Entradas se desactiva durante la rotación para evitar que la lista cambie a mitad del giro, lo que invalidaría el cálculo de probabilidad.
La duración de la animación es fija a propósito para que ninguna entrada salga favorecida.
Pestaña Ganadores
Cada ganador se añade automáticamente a la pestaña Ganadores. Cambia de pestaña para ver el historial completo, con un contador que indica cuántos ganadores se han elegido.
Usa el botón Limpiar en la pestaña Ganadores para reiniciar el historial sin tocar tus entradas.
Eliminar ganador / Usar como entradas
En la ventana del ganador, el botón Eliminar quita la entrada ganadora — perfecto para sorteos donde cada nombre debe ganar solo una vez. El botón Usar como entradas (pestaña Ganadores) devuelve todos los ganadores a la lista de giro.
Combina ambos para rondas de eliminación: girar, eliminar, repetir.
Giro automático
Tras mostrar un ganador, la ventana puede activar el siguiente giro automáticamente. Marca la casilla y ajusta la cuenta atrás en segundos. El temporizador se reinicia con cada nuevo ganador.
Cuenta atrás por defecto: 30 segundos — ajústala al ritmo de tu evento.
Anuncio por voz del ganador
Cuando está activada, el nombre del ganador se lee en voz alta mediante la Web Speech API del navegador (interfaz SpeechSynthesis, especificación del W3C Community Group). La voz y el idioma se seleccionan automáticamente para coincidir con el idioma activo de la interfaz, entre los siete locales soportados. El estado del interruptor en la ventana del ganador se guarda en localStorage como voiceOver_.
La calidad y el idioma de la voz dependen de las voces instaladas en tu sistema.
Sonido de giro
Suena un tic-tac durante la rotación, como una ruleta real. Actívalo o desactívalo con el icono del altavoz en la cabecera — el ajuste se mantiene entre sesiones.
Silencia el sonido en clase u oficina cuando el ambiente lo requiera.
Modo pantalla completa
Pulsar el icono de pantalla completa en la cabecera invoca la Fullscreen API del navegador (Element.requestFullscreen()), expandiendo el canvas de la ruleta a todo el viewport. Compatible con todos los navegadores evergreen (Chrome, Edge, Firefox, Safari 16.4+) — ideal para presentaciones, proyectores y compartir pantalla en videollamadas.
Pulsa Esc para salir de pantalla completa en cualquier momento.
Guardado automático de listas
Las entradas se guardan automáticamente en el localStorage del navegador (Web Storage API, recomendación del W3C), con una clave por idioma: mainInput_en, mainInput_fr, etc. El almacenamiento sobrevive al cierre de la pestaña, al reinicio del navegador y de la máquina, hasta que el usuario borre los datos del sitio. La capacidad por origen es típicamente de 5 MB, suficiente para decenas de miles de entradas.
Guardado por idioma: pasar a inglés te da una lista en inglés independiente.
Compartir por enlace
La URL se actualiza en cada pulsación de tecla mediante la History API (history.replaceState), codificando la lista de entradas como parámetro de consulta. Compartir la dirección transfiere el estado de la ruleta sin ninguna llamada al servidor — el destinatario abre el enlace y ve la misma configuración en su dispositivo. El tamaño de la lista solo está limitado por las longitudes de URL típicas del navegador (~2.000 caracteres en clientes antiguos, ~32.000 en Chromium moderno).
Sin cuentas ni servidores: la lista vive dentro de la propia URL.
Selector de idioma
La ruleta está disponible en 7 idiomas: inglés, francés, español, japonés, portugués, alemán y polaco. Elige el idioma en el pie de página — toda la interfaz, incluida la voz, cambia al instante.
Cada idioma conserva su propia lista guardada, sin sobrescribir las demás.