# Política de privacidad

FamilyNido — instancia `familia.example.com` · última actualización: 25 de abril de 2026

## 1. Quiénes somos

FamilyNido es una aplicación familiar self-hosted, no comercial, de uso privado. Esta instancia concreta (`familia.example.com`) la opera el administrador del despliegue desde su propio servidor, para uso exclusivo de su unidad familiar.

Dudas o solicitudes sobre esta política: privacy@your-domain.example.

## 2. Qué datos tratamos

### 2.1 Cuenta de usuario (PocketID)

- Identificador único (sub) emitido por PocketID.
- Correo electrónico y nombre para mostrar.
- Cookie de sesión `HttpOnly` con duración de 8 horas que mantiene la sesión iniciada.

### 2.2 Datos generados por el uso de la aplicación

- Mensajes y notas que publiques en el muro, incluyendo imágenes adjuntas.
- Tareas del hogar que crees (título, recurrencia, asignaciones, historial de compleciones).
- Información de la familia: miembros, colores, datos de contacto opcionales.

### 2.3 Integración con Google Calendar

La integración con Google Calendar es opcional y se activa explícitamente cuando un adulto vincula su cuenta de Google desde la pantalla "Cuentas vinculadas". Si lo haces, FamilyNido almacena lo siguiente:

- Refresh token emitido por Google (cifrado en reposo con ASP.NET Core Data Protection).
- Tu correo y nombre de la cuenta Google (extraídos del id_token).
- La lista de calendarios disponibles en tu cuenta y, para los que decidas importar, los eventos sincronizados: título, descripción, ubicación, fecha y hora, zona horaria, enlace al evento en Google.
- Un sync token opaco de Google para realizar sincronizaciones incrementales eficientes.

La aplicación pide únicamente el ámbito `https://www.googleapis.com/auth/calendar.readonly`. No se escribe en tu Google Calendar bajo ningún concepto.

## 3. Para qué usamos esos datos

- Mostrarte el calendario familiar agregado dentro de FamilyNido.
- Operar las funciones que tú o tu familia uséis activamente (muro, tareas, etc.).
- Mantener la sesión iniciada y recordar tu última lectura del muro para el contador de mensajes nuevos.

Limited Use (Google API Services User Data Policy). El uso que FamilyNido hace de la información obtenida desde APIs de Google se ajusta a la Google API Services User Data Policy, incluido el requisito de uso limitado: los datos de Google Calendar se usan exclusivamente para mostrar tus eventos en la interfaz de FamilyNido, no se transfieren a terceros, no se utilizan para entrenar modelos de IA y no se emplean para mostrar publicidad.

## 4. Con quién compartimos los datos

Con nadie. FamilyNido no vende, no comparte ni cede datos a terceros. No hay analítica de terceros (Google Analytics, Mixpanel, etc.), no hay píxeles publicitarios, no hay redes sociales embebidas. La única comunicación con servicios externos es:

- PocketID (autoalojado), para autenticarte mediante OIDC.
- Google Calendar API, exclusivamente cuando vinculas voluntariamente tu cuenta y solo para descargar tus eventos.

## 5. Dónde se almacenan los datos

Los datos viven en una base de datos PostgreSQL alojada en un servidor doméstico en España, accesible únicamente desde la red interna del operador y expuesta a través de un proxy inverso (Traefik) con TLS de Let's Encrypt. No hay copias en clouds de terceros salvo las copias de seguridad cifradas que el operador decida hacer.

## 6. Cuánto tiempo conservamos los datos

- Datos de la app (muro, tareas, miembros): mientras la familia siga utilizando la instancia.
- Eventos sincronizados desde Google: solo mientras el calendario esté marcado como "Importar". Al desactivar el interruptor, los eventos cacheados se eliminan inmediatamente.
- Refresh token de Google: hasta que desvincules la cuenta o revoques el acceso desde myaccount.google.com/permissions. Al desvincular se elimina junto con los calendarios y eventos asociados.

## 7. Tus derechos

Como usuario tienes derecho a acceder, rectificar y borrar tus datos. La aplicación incluye los controles para ello (editar tu miembro, desvincular cuentas Google, etc.). Para un borrado total de tu cuenta o cualquier otra solicitud, escríbenos a privacy@your-domain.example.

## 8. Seguridad

- Comunicación por HTTPS de extremo a extremo (TLS 1.2+).
- Cookies de sesión `HttpOnly`, `Secure` y `SameSite=Lax`.
- Contraseñas no almacenadas: la autenticación se delega a PocketID (passkeys).
- Tokens de Google cifrados en reposo con ASP.NET Core Data Protection.

## 9. Cambios en esta política

Cualquier cambio relevante se reflejará en esta página y se anunciará en el muro de la familia. La fecha de "última actualización" en la cabecera siempre indica la versión vigente.