Sobre el proyecto

Smart Attendance System es una aplicación local de asistencia mediante reconocimiento facial. Combina una interfaz móvil de React Native con un backend de FastAPI Python para reemplazar el pase de lista manual. La aplicación móvil captura los rostros de los estudiantes utilizando Expo Camera, y el backend los procesa comparándolos con un reconocedor facial LBPH de OpenCV. La asistencia coincidente se registra con marcas de tiempo en una base de datos SQLite local mediante consultas parametrizadas. Las características principales incluyen el reconocimiento facial en tiempo real a través de LBPHFaceRecognizer de OpenCV, el registro automatizado de datos y un tablero móvil que muestra estadísticas de la clase, porcentajes de asistencia y registros de escaneo recientes. El frontend utiliza React Native, Expo, Expo Camera y Expo FileSystem. El backend utiliza Python, FastAPI, Uvicorn y python-multipart. La visión artificial se basa en opencv-contrib-python y Haar Cascades, mientras que SQLite3 almacena los datos de asistencia. El proyecto destaca el manejo de red nativo: utiliza expo-file-system para solventar las limitaciones de FormData de React Native en Android y habilita explícitamente el tráfico http de texto claro local para la comunicación en la red local. Los requisitos previos incluyen Python 3.10+, Node.js y npm, Expo CLI, y un dispositivo Android físico para pruebas y escaneo. La configuración del backend comienza con la creación de un entorno virtual de Python en la raíz del proyecto.