Sobre el proyecto

Folio se presenta como un formato Markdown y un conjunto de herramientas para escribir un programa dentro del documento que lo explica. Un documento puede comenzar con un encabezado YAML que contiene campos como format, id, type, status y tangle root. Los bloques de código pueden nombrarse y especificar un archivo de destino. El proceso de tangling recolecta los bloques de código de un documento en archivos fuente, escribe un encabezado generado en el estilo de comentario de cada archivo y registra un archivo adjunto tangle-map que muestra qué fragmento produjo qué archivo. Los fragmentos pueden empalmarse colocando una referencia de bloque en una línea, pegando ese bloque en la sangría de la referencia. El weaving renderiza el mismo documento como una página para lectura. El checker valida los metadatos del documento frente a un vocabulario suministrado o uno definido en los documentos. El vocabulario suministrado describe documentos, software y sus relaciones, y puede extenderse o reemplazarse. Los documentos pueden declarar conceptos e instancias utilizando bloques Turtle o YAML. Las publicaciones seleccionan documentos y código de una colección más amplia y producen un repositorio independiente, con los orígenes registrados en PROVENANCE.json y un rechazo de dependencias de crates fuera de la selección. Este repositorio fue producido de esa manera e incluye la herramienta más los documentos fuente que lo generaron. El Rust generado se confirma (committed), por lo que un clon nuevo puede compilarse con cargo. Las guías cubren la integración, la vinculación de documentos con código existente y las limitaciones actuales. La CI puede volver a ejecutar el tangle y fallar si el árbol cambia. La licencia es MIT, y las licencias de dependencias mantienen sus propios términos. El README también proporciona un ejemplo de prompt para pedir a un agente que evalúe dónde podría ayudar Folio en un proyecto.