Alumnado CEBEM

Proxectos do alumnado

Unha selección de traballos e proxectos desenvolvidos polo noso alumnado durante a súa formación.

BMO, un asistente personal interactivo en Raspberry Pi con IA

Alumno/a: León Alberto Radziunas Salinas

BMO, un asistente personal interactivo en Raspberry Pi con IA

BMO es un asistente digital físico inspirado en una interfaz retro e interactiva, desarrollado como proyecto de Fin de Ciclo. El sistema vive dentro de una carcasa propia con pantalla, altavoces, micrófono y botones físicos, funcionando sobre una Raspberry Pi. El proyecto integra reconocimiento de voz, wake word personalizado, síntesis de voz con Piper, una interfaz web adaptada a pantalla embebida, control mediante GPIO y un backend en Python encargado de coordinar los servicios del asistente. BMO se conecta con Google Calendar para consultar, crear y eliminar eventos, con Gmail para revisar correos recientes y resumir información relevante, y con servicios externos de clima para responder con datos meteorológicos actualizados. Además, puede mantener conversaciones mediante modelos de lenguaje, gestionar alarmas y temporizadores, guardar recuerdos en una memoria personal, activar un modo de descanso con “buenas noches”, reproducir sonidos y canciones, mostrar expresiones faciales animadas y ejecutar minijuegos controlados desde los botones físicos de la carcasa. A nivel técnico combina frontend web, backend en Python, servicios locales, conectores externos, modelos de voz, procesamiento de audio y despliegue en entorno Linux con servicios systemd. El objetivo del proyecto es demostrar cómo una aplicación software puede transformarse en un producto físico funcional, con una experiencia cercana, útil y con personalidad propia.

Ver proxecto
Sistema Perimetral de Auditoría de Radiofrecuencia y Diagnóstico de Red

Alumno/a: Daniel Gayoso Fernandes

Sistema Perimetral de Auditoría de Radiofrecuencia y Diagnóstico de Red

NetScan es una solución de auditoría de seguridad y diagnóstico de redes inalámbricas basada en una arquitectura local descentralizada (Edge-to-Server). El sistema combina un dispositivo físico perimetral microcontrolado (ESP32) para la captura in situ de métricas de radiofrecuencia (RF), un servidor de persistencia criptográfica en el backend (Node.js) y una interfaz analítica en tiempo real en el frontend (React). Características principales: Edge Computing: El ESP32 realiza el escaneo pasivo del espectro Wi-Fi (2.4 GHz) y procesa perimetralmente el RSSI para calcular de forma nativa la distancia estimada a cada punto de acceso. Cifrado en Reposo (Encryption at Rest): Para garantizar la máxima confidencialidad de la auditoría, el backend cifra línea por línea los datos capturados utilizando el algoritmo estándar de la industria AES-256-CBC antes de almacenarlos en el disco duro. Descifrado Dinámico en RAM: El sistema expone un endpoint seguro que descifra el histórico de capturas al vuelo directamente en memoria RAM al solicitar la descarga, asegurando que los datos sensibles nunca toquen el almacenamiento físico en texto plano. Visualización Avanzada: Un panel web reactivo muestra las métricas analizadas y la fluctuación de la señal en tiempo real mediante gráficos dinámicos temporales. Tecnologías usadas: Firmware: C (Framework ESP-IDF v6.0.1, subcomponentes esp-tls y mbedtls). Backend: Node.js, Express, TypeScript, API nativa crypto y fs. Frontend: React, Vite, TypeScript, Tailwind CSS y Recharts (motor de gráficos).

Ver proxecto
Inteligencia de Mercado Laboral

Alumno/a: Diego Alonso Loureiro

Inteligencia de Mercado Laboral

DESCRIPCIÓN GENERAL HODOS (del griego "hodos", camino) es una herramienta web de Market Intelligence orientada al mercado laboral. Su objetivo es facilitar la toma de decisiones profesionales a estudiantes y perfiles junior, proporcionando datos reales de empleabilidad, salarios y riesgo del mercado laboral, además de establecer una relación entre empleado-empleador más precisa y rica en información por ambas partes La plataforma integra inteligencia artificial (Google Gemini) para normalizar datos profesionales, generar roadmaps de aprendizaje personalizados y ofrecer recomendaciones basadas en el perfil competencial de cada usuario. El concepto se basa en la colaboración con otras plataformas, empresas y academias para centralizar la toma de decisiones y el acceso a los recursos necesarios para alcanzar los objetivos propuestos laboralmente. FUNCIONALIDADES PRINCIPALES Explorador de Carreras: Búsqueda de profesiones con filtros por categoría, demanda, dificultad y rentabilidad. Cada profesión incluye métricas detalladas y un "Overall Score" calculado algorítmicamente. Comparador de Roles: Comparación lado a lado de múltiples profesiones en salarios, empleabilidad, riesgo de automatización por IA, conciliación laboral y skills requeridas. Radar de Habilidades: Gráfico radar dual (soft/hard skills) que mapea el perfil competencial del usuario contra los perfiles profesionales. Roadmaps Personalizados: Planes de estudio generados por IA basados en la brecha entre las skills del usuario y las requeridas por la profesión objetivo. Incluye milestones, certificaciones y consejos accionables. Perfil Inteligente: Configuración de habilidades personales con recomendaciones automáticas (Top 3 profesiones afines). STACK TECNOLÓGICO El proyecto se organiza como un monorepo con tres servicios independientes: FRONTEND: Next.js 16 (React 19) — Framework principal con App Router TypeScript 6 — Tipado estricto Tailwind CSS — Estilos responsivos Framer Motion — Animaciones y transiciones fluidas Recharts — Visualización de datos (radar, barras, scatter, gauge) Radix UI — Componentes accesibles (tooltips, dropdowns) Lucide React — Iconos vectoriales Capacitor — Generación de APK nativa para Android BACKEND: Node.js 20+ con Express 4 — Servidor HTTP y API REST TypeScript 5 — Tipado estricto Google Gemini SDK — Integración con IA generativa (normalización, análisis de riesgo, generación de roadmaps BASE DE DATOS: Supabase (PostgreSQL 15) — Base de datos relacional en la nube 9 tablas con Row Level Security (17 políticas RLS) Autenticación gestionada por Supabase Auth INFRAESTRUCTURA: GitHub — Control de versiones Railway — Hosting del backend + frontend Capacitor + Android Studio — Compilación de APK móvil

Ver proxecto
Aplicación para crear y gestionar listas compartidas de películas y series con amigos

Alumno/a: Jimmy Josue Calderón Andrade

Aplicación para crear y gestionar listas compartidas de películas y series con amigos

WhichNext es una aplicación para crear y gestionar listas compartidas de películas y series con amigos, parejas o familia. Permite ponerse de acuerdo sobre qué ver y hacer un seguimiento conjunto, destacando por: Control individual: Cada usuario marca lo que ha visto o tiene pendiente sin afectar el estado de los demás miembros. Información completa: Encuentra sinopsis, carátulas y en qué plataformas de streaming (Netflix, Disney+, etc.) está disponible cada título en tu país. Interacción social: Deja valoraciones, comentarios y reacciones para que tu grupo las vea. Ayuda inteligente y azar: Cuenta con un Oráculo de IA que te recomienda qué ver según tu historial y un selector aleatorio para indecisos.

Ver proxecto
Asistente de nutrición y entrenamiento impulsado con IA

Alumno/a: Gabriel Acevedo Méndez

Asistente de nutrición y entrenamiento impulsado con IA

NutrIA es una aplicación móvil de nutrición y entrenamiento diseñada para personas que buscan mejorar su composición corporal con un enfoque en fuerza e hipertrofia. Combina inteligencia artificial, reglas deterministas y una base de datos de alimentos para ofrecer una experiencia personalizada y completa. Características principales Búsqueda de alimentos: búsqueda unificada por texto, escaneo de código de barras y reconocimiento de alimentos por fotografía. Coach nutricional con IA: chat conversacional con NutriCoach, capaz de interpretar fotos de platos, sugerir adaptaciones del plan y proponer rutinas de entrenamiento. Seguimiento de dieta: registro diario de comidas con cálculo automático de macros, objetivos calóricos, historial mensual y rachas de constancia. Planes de dieta personalizados: generación automática con IA o creación manual, con edición fina de comidas, sustituciones y lista de la compra integrada. Cálculos de rendimiento: cálculo de BMR, TDEE y distribución de macronutrientes adaptados al objetivo del usuario (volumen, definición, mantenimiento). Gamificación: sistema de insignias, racha de nutrición y mascota animada para mantener la motivación. Recetas y alimentos personalizados: creación y gestión de recetas propias e ingredientes personalizados. Progreso completo: historial de peso, registro de actividad física, consumo de agua y análisis de estancamiento. Sistema freemium: acceso básico gratuito con funciones avanzadas para usuarios premium. Tecnología utilizada: App móvil: Expo, React Native, TypeScript, Expo Router Estado y datos: TanStack Query, Zustand, Zod Backend: FastAPI (Python), Pydantic v2, SQLAlchemy 2 Base de datos: PostgreSQL (Neon Cloud) Inteligencia Artificial: Groq API (visión multimodal, chat, JSON estructurado, tool calling) Autenticación: JWT propio Nutrición: Open Food Facts, catálogo local, FatSecret Despliegue: Vercel (API) + Expo (móvil)

Ver proxecto
Tu plataforma de deportes de motor

Alumno/a: Victor Picallo Rodriguez

Tu plataforma de deportes de motor

BeEngine es una plataforma web centralizada (hub) enfocada en el mundo del motorsport que cubre exhaustivamente seis categorías principales del automovilismo y motociclismo mundial: Fórmula 1, Fórmula 2, Fórmula 3, MotoGP, Moto2 y Moto3. Características Principales Seguimiento Integral: Centralización de calendarios, horarios, resultados oficiales y clasificaciones mundiales actualizadas tanto para pilotos como para equipos/escuderías. Live Timing & Clima: Visualización de tiempos en directo (live timing) para sesiones en curso (ej. F1 y MotoGP), complementado con predicciones meteorológicas en tiempo real para cada uno de los circuitos. Agregador de Noticias: Sistema de sincronización periódica que extrae y almacena noticias de los principales portales de motor indexados (Motorsport.com, BBC, Crash.net, Formula1.com). Gestión de Usuarios: Sistema de autenticación que permite la creación de perfiles y la gestión de listas personalizadas de "Favoritos" (para realizar un seguimiento de pilotos, equipos o noticias específicas). Asistente IA Integrado: Chat inteligente embebido en la plataforma para asistir a los usuarios en la navegación interna y responder consultas complejas sobre la información alojada en la base de datos. Stack Tecnológico A continuación se detalla la arquitectura técnica implementada en la plataforma: Frontend Framework: Angular (TypeScript). Estilos: Motor principal basado en Tailwind CSS (v4) para estilos utilitarios, combinado de forma híbrida con Vanilla CSS nativo para componentes estructurales específicos (como el dashboard personalizado del Live Timing) Backend Arquitectura: API REST desarrollada en Node.js utilizando Express 5. Prisma para la gestión e interacción tipada con la base de datos.

Ver proxecto
Dragon Repeller es un videojuego de rol tipo RPG con interfaz web, ambientación fantástica y sistema de progreso persistente

Alumno/a: Javier Sío Gesteira

Dragon Repeller es un videojuego de rol tipo RPG con interfaz web, ambientación fantástica y sistema de progreso persistente

Dragon Repeller RPG es un videojuego de rol tipo RPG con interfaz web, ambientación fantástica y sistema de progreso persistente por usuario. El jugador puede iniciar sesión, explorar el pueblo, comprar salud o armas, entrar en la cueva y combatir monstruos hasta derrotar al dragón final. El proyecto está desarrollado con una arquitectura cliente-servidor. La parte visual se implementa en HTML5, CSS3 y JavaScript puro, con una interfaz responsive y un modal personalizado para mostrar mensajes del juego sin usar alertas nativas. El backend está desarrollado con Node.js y Express, e incluye autenticación segura mediante JWT y cifrado de contraseñas con bcrypt. Para la persistencia de datos se utiliza SQLite, donde se almacena el progreso de cada usuario: experiencia, vida, oro, inventario, arma equipada, localización y estado de victoria o derrota. Además, se implementó autosalvación local en el navegador mediante localStorage y sincronización automática con el servidor al iniciar sesión, evitando la pérdida de progreso. El proyecto también incluye un script de arranque para Windows que permite iniciar el servidor y abrir la aplicación web de forma rápida desde el Escritorio. TECNOLOGÍAS USADAS Frontend: HTML5, CSS3, JavaScript Backend: Node.js, Express Autenticación: JWT, bcrypt Base de datos: SQLite (better-sqlite3) Persistencia local: localStorage Plataforma objetivo: Web y futura app móvil React Native FUNCIONALIDADES PRINCIPALES Registro e inicio de sesión de usuarios Guardado y carga de progreso por usuario Sistema de combate por turnos/acciones Compra de armas y salud Persistencia automática del estado del juego Modal personalizado para mensajes del sistema Interfaz responsive adaptada a diferentes pantallas

Ver proxecto
Plataforma enfocada en facilitar la adopción de mascotas y gestión de los refugios de animales

Alumno/a: Juan Carlos Lorenzo Villar

Plataforma enfocada en facilitar la adopción de mascotas y gestión de los refugios de animales

TinPet es una plataforma integral compuesta por una aplicación móvil y un panel de control web, enfocada en facilitar la adopción de mascotas y optimizar la gestión administrativa de los refugios de animales y las clínicas veterinarias Entre sus características principales se incluyen: Gestión de mascotas y tareas: Permite registrar y editar detalladamente la información de los animales, asignar empleados a su cargo y organizar las tareas diarias mediante un sistema de monitorización con checklists Mensajería y adopciones: Cuenta con un sistema en tiempo real para gestionar solicitudes de adopción (matches) y chats directos entre adoptantes y refugios, incluyendo el soporte para envío de fotografías, emojis e historiales de chats (activos, archivados y bloqueados) Notificaciones y geolocalización: Integra notificaciones en la aplicación, ubicación de adoptantes y refugios. Diseño Premium (UX/UI): Ofrece una interfaz cuidada con transiciones suaves, modales de bordes curvos y soporte persistente para modo oscuro y claro Tecnología usada: Aplicación Móvil: Desarrollada principalmente con TypeScript (88.9%) utilizando Expo Frontend Web: React con TypeScript, empaquetado con Vite, estilos con Tailwind CSS y Vanilla CSS, junto con React Router DOM y Socket.IO-client Backend: Node.js y Express, base de datos en PostgreSQL con ORM Prisma, WebSockets con Socket.IO, autenticación con JWT + bcrypt.

Ver proxecto
Descubre, valora y organiza tu colección de videojuegos.

Alumno/a: Lucas Pérez Fernández

Descubre, valora y organiza tu colección de videojuegos.

GameIndex es una plataforma integral diseñada para entusiastas de los videojuegos que combina las funciones de una base de datos exhaustiva, una red social y un agregador de reseñas. La aplicación permite a los usuarios explorar miles de títulos, gestionar su "backlog" personal mediante listas personalizadas, y participar en una comunidad activa mediante la publicación de críticas detalladas y valoraciones. Características principales: Catálogo Completo: Integración con APIs líderes del sector (IGDB y RAWG) para ofrecer fichas detalladas de juegos, incluyendo fechas de lanzamiento, géneros y plataformas. Gestión de Colecciones: Herramientas para crear y organizar listas de juegos (pendientes, completados, favoritos). Sistema de Reseñas: Editor de texto enriquecido para escribir críticas y sistema de puntuación comunitaria. Rankings Dinámicos: Clasificaciones actualizadas de los juegos mejor valorados y más populares. Búsqueda Ultra-rápida: Implementación de Meilisearch para encontrar cualquier título de forma instantánea. Panel de Administración: Control total sobre el contenido, usuarios y estadísticas del sitio. Tecnología usada: Frontend: Next.js 15 (App Router), React 19, TypeScript y Tailwind CSS. Componentes: Shadcn/ui para una interfaz moderna y accesible. Backend: Node.js con base de datos Neon (PostgreSQL Serverless). Búsqueda: Meilisearch. Autenticación: Sistema propio basado en tokens seguros y gestión de sesiones.

Ver proxecto
Plataforma de comunicacion entre usuarios

Alumno/a: Pedro Lourido Romero

Plataforma de comunicacion entre usuarios

Dispeak es una aplicación de comunicación en tiempo real inspirada en Discord y TeamSpeak: servidores, canales de texto y voz, mensajes directos, roles, permisos e invitaciones. Está pensada para equipos y comunidades pequeñas o medianas que necesitan chat, voz y moderación básica en una sola plataforma, accesible desde navegador, escritorio (Windows) y Android(estaba muy verde y por eso no lo enseñe). El proyecto se desarrolla como monorepo con arquitectura cliente–servidor: una interfaz web moderna consume una API REST y conexiones en tiempo real, con voz mediante WebRTC y LiveKit. Características principales Servidores y canales Creación y gestión de servidores con icono y banner personalizables. Canales de texto y canales de voz, organizados en categorías. Sistema de invitaciones para unirse a un servidor. Roles y permisos granulares (ver canal, enviar mensajes, unirse a voz, hablar, moderar, etc.). Registro de auditoría de acciones de moderación. Chat y mensajería Mensajes en tiempo real con historial, edición y borrado. Hilos (respuestas en hilo), citas y reacciones con emoji. Adjuntos (imágenes y archivos). Formato Markdown en mensajes. Búsqueda de mensajes dentro de un servidor. Indicadores de mensajes no leídos en canales y DMs. Indicador de “está escribiendo…”. Mensajes directos y amigos Lista de amigos, solicitudes de amistad y bloqueos. Conversaciones 1 a 1 con las mismas capacidades de chat (adjuntos, invitaciones a servidor, etc.). Voz y vídeo Chat de voz en canales dedicados. Dos modos de audio: Mesh P2P (WebRTC) para grupos pequeños (baja latencia, sin servidor de medios). LiveKit (SFU) para cámara, compartir pantalla o sesiones con más participantes. Controles de silencio, push-to-talk, presencia en canal (quién está conectado, quién habla). Moderación de voz (silenciar en servidor, expulsar de voz, etc.). Asistente de voz (“Ey Dispeak”) Activación por frase de despertar, estilo asistente tipo Siri. Comandos por voz: ir a amigos o a un servidor, crear servidor/canal, unirse a voz, enviar mensajes en canales, silenciarse, ayuda, etc. Transcripción con Groq Whisper e interpretación de intención con LLM. Perfil y personalización Perfil de usuario (nombre, avatar, banner). Tema claro/oscuro y preferencias de idioma (español / inglés). Ajustes de audio (cancelación de eco, supresión de ruido, push-to-talk).

Ver proxecto

Listo para comezar a túa formación?

Únete a milleiros de estudantes que transformaron o seu futuro profesional con nós.