Documentación Técnica de Capsus
Capsus guarda lienzos y cápsulas en el navegador, sin cuentas ni sincronización automática. El editor funciona offline con los recursos ya disponibles. Las previews, fuentes, medios externos y señalización del teléfono utilizan internet y pueden procesar datos técnicos de conexión.
1. Arquitectura Local-First
El lienzo, la edición de imágenes y el audio se procesan en el dispositivo. Fabric.js dibuja el lienzo y Three.js la esfera 3D. El service worker conserva recursos para trabajar offline después de cargarlos; las funciones de red y los recursos aún no descargados necesitan conexión.
// Tecnologías centrales
Almacenamiento: IndexedDB (idb-keyval), localStorage, Cache Storage
Motor de Lienzo: Fabric.js v7 + Three.js r185
Workers: serialize-worker, cutout workers
PWA: Service worker: recursos offline tras su carga
2. Especificación del Archivo .capsus.zip
Una copia .capsus.zip es un ZIP sin cifrado con el estado exportado de una edición. No garantiza conservar páginas o videos externos:
- data.json: Estado del lienzo y las capas, identificador, nombre, versión del formato, estado de sellado y fecha de exportación.
- HTML / TXT: Documentos opcionales para explorar notas, enlaces y medios fuera de Capsus. Sus nombres siguen el idioma de la interfaz y pueden omitirse si se superan los límites del archivo.
- assets/: Medios y recursos de edición incluidos en la copia, como fotos, audios, vistas previas y máscaras. Los enlaces pueden seguir dependiendo de internet.
3. Endpoints de API Protegidos
El servidor atiende previews de enlaces, imágenes remotas y señalización del teléfono. Las APIs usan controles de origen y límites de solicitudes basados en IP o cabeceras; la señalización guarda temporalmente datos de sesión en Redis en producción.
Recibe una URL y consulta la página, plataformas o intermediarios para obtener metadatos. Aplica controles contra SSRF y límites de solicitudes. Algunas previews públicas permiten caché compartida; no todas las consultas son efímeras.
Proxifica imágenes remotas para habilitar el recorte y extracción de texturas sin contaminación de canvas (tainted canvas).
Coordina una conexión opcional con el teléfono mediante sesiones temporales y mensajes SDP cifrados. Las fotos viajan directamente entre dispositivos por WebRTC; el servidor no las guarda ni retransmite.
4. Seguridad y Privacidad
Capsus aplica cabeceras y validaciones de seguridad, sin garantizar protección absoluta. El micrófono requiere permiso; el recorte con IA analiza la imagen localmente tras descargar modelo y motor. Fuentes y medios externos pueden contactar a terceros. Los lienzos locales y copias .capsus.zip no están cifrados; el sellado no cambia eso. Consulta Privacidad para conocer las conexiones y el almacenamiento.
5. Negociación de Contenido para LLMs
Las rutas de Capsus soportan negociación de contenido HTTP vía cabecera Accept:
Accept: text/html → Esta interfaz web interactiva
Accept: text/markdown → Reescritura directa a /docs.md
GET /llms.txt → Contexto estructurado para agentes de IA