COMSIGNS es una aplicación web innovadora que utiliza Inteligencia Artificial para traducir el lenguaje de señas ecuatoriano en tiempo real, facilitando la comunicación e inclusión de la comunidad sordomuda.
Desarrollar una plataforma tecnológica que permita a personas sordas y oyentes comunicarse de manera efectiva mediante el reconocimiento automático de señas del alfabeto ecuatoriano, promoviendo la inclusión y accesibilidad.
- Predicción en tiempo real de letras del alfabeto ecuatoriano (A-Y)
- Procesamiento de imágenes mediante cámara web o carga de archivos
- Precisión superior al 85% en condiciones óptimas
- Validación de confianza configurable por nivel de usuario
- 24 lecciones estructuradas para aprender el alfabeto completo
- Orden pedagógico progresivo (de fácil a difícil)
- Consejos específicos y técnicas para cada letra
- Progreso automático y seguimiento personalizado
- 3 niveles de dificultad: Principiante, Intermedio, Avanzado
- Sistema de puntuación con bonus por velocidad y precisión
- Desafíos cronometrados para mejorar habilidades
- Tabla de clasificación comunitaria
- Métricas detalladas de rendimiento por usuario
- Estadísticas de aprendizaje y áreas de mejora
- Historial de sesiones y evolución temporal
- Reportes exportables para educadores
Next.js 14 con App Router
TypeScript para tipado estático
Tailwind CSS para diseño responsivo
shadcn/ui para componentes accesibles
FastAPI como framework web asíncrono
Python 3.13 como lenguaje principal
Pydantic para validación de datos
TensorFlow 2.18 para modelos de IA
MediaPipe para detección de landmarks
OpenCV para procesamiento de imágenes
NumPy para cálculos numéricos
graph TB
User[👤 Usuario] --> Frontend[🖥️ Next.js Frontend]
Frontend --> API[🚀 FastAPI Backend]
subgraph "Backend Services"
API --> ML[🧠 ML Service]
API --> Tutorial[📚 Tutorial Service]
API --> Practice[🎮 Practice Service]
end
subgraph "Data Layer"
ML --> MediaPipe[📹 MediaPipe]
MediaPipe --> TensorFlow[🤖 TensorFlow Model]
API --> Supabase[(☁️ Supabase DB)]
API --> Redis[(🗄️ Redis Cache)]
end
subgraph "Infrastructure"
API --> Docker[🐳 Docker Container]
Frontend --> Docker2[🐳 Docker Container]
Redis --> Docker3[🐳 Docker Container]
end
- Captura: Usuario captura imagen de seña desde cámara/archivo
- Procesamiento: MediaPipe extrae landmarks de la mano (21 puntos × 3 coordenadas)
- Normalización: Coordenadas se normalizan y preparan para el modelo
- Predicción: TensorFlow predice la letra con nivel de confianza
- Validación: Sistema valida confianza y retorna resultado
- Persistencia: Progreso y métricas se guardan en Supabase
- Cache: Datos frecuentes se almacenan en Redis para velocidad
# 1. Clonar el repositorio
git clone https://github.com/MarLord06/ComSigns-V2.git
cd ComSigns-V2
# 2. Configurar variables de entorno
cp .env.example .env
# 3. Levantar todos los servicios
./start-dev.sh| Servicio | URL | Descripción |
|---|---|---|
| 🖥️ Frontend | http://localhost:3000 | Aplicación web principal |
| 🚀 API | http://localhost:8000 | Backend REST API |
| 📖 Docs | http://localhost:8000/docs | Documentación interactiva Swagger |
| 📚 ReDoc | http://localhost:8000/redoc | Documentación alternativa |
# Desarrollo rápido
./start-dev.sh # Inicia todos los servicios en desarrollo
# Build optimizado
./quick-build.sh # Construye imágenes con cache optimizado
# Docker manual
docker-compose -f docker-compose.dev.yml up -d # Servicios desarrollo
docker-compose -f docker-compose.fast.yml up -d # Build optimizadoPara información detallada sobre endpoints, autenticación, y ejemplos de uso, consulta nuestra 📖 Documentación Completa de la API.
- 🧠 Guía del Modelo ML - Detalles del modelo de IA
- 🎓 Tutorial de Desarrollo - Guía para desarrolladores
- 🚀 Guía de Despliegue - Instrucciones de producción
# Backend tests
docker exec -it comsigns-backend pytest
# Tests con coverage
docker exec -it comsigns-backend pytest --cov=app tests/
# Frontend tests
cd frontend && npm test¡Las contribuciones son bienvenidas! Por favor:
- Fork el proyecto
- Crea tu rama de feature (
git checkout -b feature/nueva-funcionalidad) - Commit tus cambios (
git commit -m 'Añadir nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Abre un Pull Request
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para detalles.
- MarLord06 - Desarrollador Principal
- Comunidad COMSIGNS - Colaboradores y testers
- Comunidad sordomuda ecuatoriana por su invaluable feedback
- Fundación Nacional de Sordos del Ecuador por su apoyo
- Pontificia Universidad Catolica del Ecuador por el respaldo académico
- Contributors Open Source por sus aportes al proyecto
🤟 Desarrollado para promover la inclusión y accesibilidad