Sobre el proyecto

Sapphire Framework es una librería de Rust para crear aplicaciones que gestionan espacios de trabajo locales basados en archivos. Proporciona capacidades de indexación de documentos, búsqueda de texto completo, búsqueda vectorial y sincronización para formatos markdown, JSON, JSONL y otros formatos de texto. Los espacios de trabajo se identifican mediante un directorio marcador (por ejemplo, .my-app) con UUID estables derivados de la ruta del espacio de trabajo. El framework utiliza redb para el almacenamiento y tantivy para la indexación de texto completo por defecto, con embeddings en el dispositivo a través de FastEmbed. La configuración se realiza mediante archivos TOML en el directorio del espacio de trabajo o variables de entorno. El indexador procesa los archivos utilizando una fragmentación específica según el formato: párrafos para markdown/texto, por elemento para JSON y por línea para JSONL. Las operaciones de archivos locales actualizan automáticamente el índice, mientras que la edición concurrente se gestiona a través de un servidor remoto central (función planificada). El control de versiones de Git requiere un manejo manual en lugar de una sincronización automática.