- Nuevo composable useFrigateEvents.ts para crear eventos en Frigate
- Boton "Evento Rapido" crea eventoWhisper de 1 minuto
- Boton de configuracion abre modal con campos personalizables
- Modal permite editar: label, sub_label, duration, include_recording
- API: POST camaras.nucleoriofrio.com/api/events/{camera}/create
- Nuevo composable useStreams.ts para gestionar streams de go2rtc
- Componente StreamPlayer.vue para reproduccion (iframe/video/img)
- Componente StreamViewer.vue con dropdowns de seleccion
- Integrado en app.vue despues del card de grabacion
- Soporta WebRTC, MSE, MP4, HLS y MJPEG
Cambios en app.vue:
- Agregar botón Inicio con icono home
- Botón apunta a https://inicio.nucleoriofrio.com
- Color verde coherente con tema de la app
- Posicionado junto al botón de Cerrar Sesión
El botón usa scope extensions para navegar dentro de la PWA.
- Agregar id único (/?app=whisper), launch_handler, handle_links y url_handlers
- Unificar workflow de 2 jobs (build + deploy) a 1 solo job
- Workaround para bug de Gitea que solo ejecuta el primer job
- Agregar capture_links en manifest para mejorar experiencia PWA
- Crear archivo .well-known para asociación con inicio.nucleoriofrio.com
- Configurar Traefik para servir .well-known sin autenticación
- Configurado proyecto Nuxt 4 con PWA
- Integrado OpenAI Whisper API para transcripción de audio
- Implementada captura de audio desde navegador
- Creada UI con grabación y visualización de transcripciones
- Configurado Authentik Proxy para autenticación
- Setup de Docker y Gitea Actions para despliegue