Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

lucid

Cliente web autoalojable para calendarios y tareas CalDAV con interfaz moderna. Funciona con Nextcloud, Radicale, Baïkal, iCloud y Synology. Sin base de datos, solo binario o contenedor.

Ficha actualizada 27 sept 2026, 20:42 · upstream 27 sept 2026, 20:37 · release sin release detectada

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es lucid

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Lucid es un cliente web autoalojable para servidores CalDAV que proporciona una experiencia de usuario moderna sin requerir migración de datos ni base de datos. Funciona como proxy inteligente entre el navegador y el servidor CalDAV, manteniendo las credenciales cifradas en memoria con AES-256-GCM.

Ofrece vistas de calendario (mes, semana, día, agenda), gestión de tareas con listas de verificación, eventos recurrentes y soporte para zonas horarias. La autenticación se realiza mediante descubrimiento automático vía /.well-known/caldav y DNS SRV.

La arquitectura separa el frontend del servidor CalDAV, evitando problemas CORS y exponiendo solo cookies HttpOnly, Secure y SameSite=Strict al navegador. Incluye endpoints de salud, métricas Prometheus y soporte para despliegues hardened con Docker Compose.

CASOS DE USO
  • Autoalojar un cliente de calendario compatible con Nextcloud sin migrar datos
  • Gestionar tareas con listas de verificación en formato Markdown legible por otras apps
  • Desplegar como contenedor distroless o binario estático en servidores headless
  • Integrar con NixOS mediante módulos systemd para gestión de servicios
PUNTOS DESTACADOS
  • Arquitectura proxy que mantiene credenciales fuera del navegador (solo cookies cifradas)
  • Protección SSRF por defecto, permitiendo solo rangos CIDR explícitos
  • Sin base de datos: sesiones en memoria con TTL configurable y caché LRU
  • Soporte para Next.js + Go con imágenes multiplataforma (amd64/arm64)
  • Cumple WCAG 2.1 AA con navegación completa por teclado
PRECAUCIONES
  • Sesiones solo en memoria: reiniciar el servicio expulsa a todos los usuarios
  • TLS obligatorio en producción; no exponer puerto 8080 públicamente
  • No soporta autenticación OAuth2, solo credenciales básicas CalDAV
  • Limitación de tasa por IP (10 intentos/login/minuto) puede bloquear accesos legítimos
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

LucidWeek view in dark modeEditing a task with a checklistDetails of an eventSign-in pageCaptura de lucid
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Usar reverse proxy TLS-terminating (Caddy/Traefik/nginx). Exponer solo /metrics en LUCID_METRICS_ADDR interno. Configurar LUCID_SESSION_KEY como secret externo. Para LAN, usar LUCID_ALLOWED_CIDRS en lugar de LUCID_ALLOW_PRIVATE_NETWORKS. Verificar releases con SBOM antes de producción.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsGo
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
8080
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.