About this project
Folio is presented as a Markdown format and a set of tools for writing a program inside the document that explains it. A document can start with a YAML header carrying fields such as format, id, type, status, and tangle root. Code blocks may be named and may specify a target file. Tangling collects a document's code blocks into source files, writes a generated header in each file's comment style, and records a tangle-map sidecar showing which chunk produced which file. Chunks can splice by placing a block reference on a line, pasting that block at the reference's indentation. Weaving renders the same document as a page for reading. The checker validates document metadata against a supplied vocabulary or one defined in the documents. The supplied vocabulary describes documents, software, and their relationships, and can be extended or replaced. Documents can declare concepts and instances using Turtle or YAML blocks. Publications select documents and code from a larger collection and produce a standalone repository, with origins recorded in PROVENANCE.json and a refusal of dependencies on crates outside the selection. This repository was produced that way and includes the tool plus the source documents that generated it. The generated Rust is committed, so a fresh clone can be built with cargo. Guides cover integration, pointing documents at existing code, and current limitations. CI can re-tangle and fail if the tree changes. The license is MIT, and dependency licenses keep their own terms. The README also gives an example prompt for asking an agent to assess where Folio could help in a project.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.