Aplicación web progresiva (PWA) para leer textos en voz alta usando la Web Speech API nativa del navegador.
- ✅ Textarea grande para pegar o escribir texto
- ✅ Controles de reproducción: Play, Pause, Stop
- ✅ Control de velocidad de lectura (0.5x a 2x)
- ✅ Diseño mobile-first, simple y limpio
- ✅ Funciona offline gracias al Service Worker
- ✅ Instalable como PWA en dispositivos móviles y desktop
- ✅ Soporte para voces en español (si están disponibles)
- Abre una terminal en la carpeta del proyecto
- Ejecuta un servidor HTTP simple:
Python 3:
python3 -m http.server 8000Node.js (con http-server):
npx http-server -p 8000- Abre tu navegador en
http://localhost:8000
Para desarrollo, puedes usar cualquier servidor HTTP local. La aplicación requiere HTTPS o localhost para que el Service Worker funcione correctamente.
Los iconos son necesarios para que la PWA funcione correctamente. Tienes varias opciones:
- Abre
generate-icons.htmlen tu navegador - Haz clic en los botones para descargar
icon-192.pngeicon-512.png - Coloca los archivos en la raíz del proyecto
Crea dos archivos PNG:
icon-192.png(192x192 píxeles)icon-512.png(512x512 píxeles)
Puedes usar cualquier herramienta de diseño (Figma, Photoshop, GIMP, etc.) o servicios online como:
Si tienes Python y Pillow instalado:
pip install Pillow
python3 generate-icons.py- Abre la aplicación en el navegador
- Haz clic en el icono de instalación en la barra de direcciones
- O ve a Menú → Instalar aplicación
- Abre la aplicación en Chrome
- Toca el menú (tres puntos)
- Selecciona "Agregar a pantalla de inicio" o "Instalar aplicación"
- Abre la aplicación en Safari
- Toca el botón Compartir
- Selecciona "Agregar a pantalla de inicio"
- Pega o escribe el texto que quieres escuchar en el textarea
- Ajusta la velocidad de lectura con el control deslizante (0.5x a 2x)
- Haz clic en "Reproducir" para comenzar la lectura
- Usa "Pausar" para pausar y "Detener" para detener completamente
- Espacio: Pausar/Reanudar (cuando el textarea no tiene foco)
- ✅ Chrome/Edge (Desktop y Android)
- ✅ Safari (iOS 14.5+)
- ✅ Firefox (con limitaciones en algunas plataformas)
⚠️ La Web Speech API puede tener diferentes voces disponibles según el sistema operativo
lector-textos/
├── index.html # Página principal
├── styles.css # Estilos CSS
├── app.js # Lógica de la aplicación
├── manifest.json # Manifest de PWA
├── service-worker.js # Service Worker para offline
├── icon-192.png # Icono 192x192 (generar)
├── icon-512.png # Icono 512x512 (generar)
├── generate-icons.html # Generador de iconos
└── README.md # Este archivo
- La aplicación usa la Web Speech API nativa del navegador
- El Service Worker cachea los recursos para funcionar offline
- Los textos se leen usando las voces disponibles en el sistema
- La aplicación detecta automáticamente voces en español si están disponibles
Puedes personalizar los colores editando las variables CSS en styles.css:
:root {
--primary-color: #2563eb;
--secondary-color: #64748b;
/* ... más variables */
}Este proyecto es de código abierto y está disponible para uso personal y comercial.