Un moderno juego del ahorcado desarrollado con Astro, Preact y Tailwind CSS. Diseñado con una interfaz intuitiva, efectos de dibujo a mano y soporte completo para teclado físico.
- 🎨 Dibujo artístico: Canvas con efectos de trazos dibujados a mano
- ⌨️ Soporte de teclado: Juega con teclado virtual o físico
- 📱 Diseño responsivo: Optimizado para móviles y escritorio
- 🎯 Interfaz moderna: UI limpia con Tailwind CSS
- 🔄 Reinicio rápido: Nueva palabra con un clic o tecla Enter
- 🎪 Efectos visuales: Cara expresiva con ojos X y lengua fuera
- 📚 Gran vocabulario: Más de 200 palabras en español
- Astro - Framework web moderno
- Preact - Librería de componentes ligera
- Tailwind CSS - Framework de CSS utility-first
- TypeScript - Tipado estático
- HTML Canvas - Para el dibujo del ahorcado
- Objetivo: Adivina la palabra oculta antes de completar el dibujo del ahorcado
- Mecánica: Tienes 6 intentos máximo (cada error agrega una parte al dibujo)
- Controles:
- 🖱️ Ratón: Haz clic en las letras del teclado virtual
- ⌨️ Teclado: Presiona cualquier letra A-Z o Ñ
- ↩️ Enter: Nueva palabra / Reiniciar juego
- Node.js 18+
- pnpm (recomendado) o npm
# Clonar el repositorio
git clone https://github.com/tu-usuario/hangman.git
cd hangman
# Instalar dependencias
pnpm install
# Iniciar servidor de desarrollo
pnpm devEl servidor estará disponible en http://localhost:4321
- Separación de responsabilidades: Cada componente tiene una función específica
- Reutilización: Componentes independientes y reutilizables
- Mantenibilidad: Código limpio y bien organizado
- useHangmanGame: Maneja toda la lógica del juego
- Estado centralizado: Un solo lugar para el estado del juego
- Eventos de teclado: Manejo completo de interacciones
- Algoritmo de dibujo a mano: Simula trazos naturales
- Renderizado consistente: Mismo aspecto en cada renderizado
- Escalado responsivo: Se adapta a diferentes tamaños de pantalla
Edita el archivo src/lib/words.ts:
export const words = [
'TU_NUEVA_PALABRA',
// ... más palabras
];Cambia MAX_ERRORS en src/hooks/useHangmanGame.ts:
const MAX_ERRORS = 6; // Cambiar a 4, 8, etc.Los estilos están en src/styles/globals.css y clases de Tailwind en los componentes.
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/nueva-caracteristica) - Commit tus cambios (
git commit -m 'Agregar nueva característica') - Push a la rama (
git push origin feature/nueva-caracteristica) - Abre un Pull Request
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para más detalles.
zkjon - @zkjon
- Inspirado en el clásico juego del ahorcado
- Desarrollado con las mejores prácticas modernas de React/Preact
- Diseño responsive con Tailwind CSS
⭐ ¡Dale una estrella si te gustó el proyecto! ⭐

