Sobre el proyecto

anarlog es un bloc de notas de reuniones con IA, de código abierto, centrado en la privacidad y local-first, y una alternativa a Granola. Está diseñado para ayudar a los usuarios a capturar, transcribir y resumir reuniones directamente en su dispositivo sin depender de bots en la nube ni enviar datos confidenciales de conversaciones a terceros. ### Características clave - **Captura de audio local:** Captura audio directamente desde tu dispositivo durante las reuniones. Ningún bot se une a la llamada, lo que garantiza total privacidad y ninguna interrupción en las listas de participantes. - **Transcripción y almacenamiento en el dispositivo:** Admite transcripción en el dispositivo mediante modelos como Soniqo o Apple Speech. Todas las sesiones, notas y transcripciones se almacenan en una base de datos SQLite local y en archivos locales, que se pueden exportar a Markdown. - **Integración flexible de IA:** Los usuarios pueden elegir su proveedor de IA preferido para resúmenes y chat. Las opciones incluyen API alojadas, claves de API personales o servidores locales compatibles con OpenAI como Ollama, LM Studio o Unsloth, así como Apple Intelligence. - **Código abierto y extensible:** La aplicación comunitaria tiene licencia MIT completa, lo que permite a los usuarios bifurcarla, auditarla, compilarla o venderla. Para las empresas, hay componentes comerciales con código visible disponibles para superar revisiones de seguridad. - **Nube cifrada opcional:** CloudSync, el alojamiento y el uso compartido son opcionales y están cifrados, lo que garantiza que el sistema siga siendo funcional incluso sin conexión a la nube. ### Estructura del repositorio El monorepositorio está organizado en varios directorios: - `apps/desktop`: La aplicación de escritorio principal Tauri v2 (React, TypeScript y backend en Rust) para macOS, Windows y Linux. - `apps/web`: El sitio web oficial, el portal de cuentas y las páginas de notas compartidas. - `apps/api` y `apps/stripe`: Servicios de backend opcionales para alojamiento de IA, sincronización, uso compartido y facturación. - `apps/cli`: Una CLI local y un servidor MCP. - `crates/*`: Bibliotecas Rust principales que gestionan la captura de audio, la transcripción, la diarización y el almacenamiento local. - `packages/*`: Paquetes TypeScript compartidos para el editor, componentes de UI, base de datos y SDK de plugins. - `plugins/*`: Plugins de Tauri para conversión local de voz a texto, acceso a base de datos, integración con calendario, exportación y notificaciones. ### Requisitos de desarrollo Para compilar desde el código fuente, los desarrolladores necesitan Node.js 22 o posterior, pnpm 11.1.1, Rust 1.94.0 y las dependencias del sistema de Tauri v2. Se proporcionan scripts de configuración para Linux (Debian/Ubuntu).