rivt is an open-source program for writing and assembling calculation documents with a focus on reuse [1]. The large ecosystem of engineering analysis software often requires organizing and combining their output into a single, systematic project document.
rivt is designed to write, assemble and link calculation documents and code into live, editable and organized rivt files prior to publishing text, PDF or HTML docs or reports. rivt markup facilitates converting any PDF or text document to, or directly writing, a live calculation document that can be easily modified and extended. Python knowledge is not required to use rivt but incorporating Python scientific and engineering libraries increases its capabilities.
The primary purpose of rivt is providing a stable file format that can be shared, edited, and maintained as a live calculation document, and that produces text, PDF and HTML engineering reports as output. rivt files can be organized in three ways that differ only in folder structure and publication process settings.
| A rivt file is the basic input file that
rivt file | compiles to a text, PDF or HTML document.
| It is a Python file (.py) that imports the
| rivtlib Python package and uses rivt markup.
| A rivtbook is a collection of rivt files with
rivtbook | common subject matter and a folder structure
| that makes it easy to select files and resources
| for inclusion in documents and reports.
| A rivt doc is the published output of a rivt
rivt doc | file. A doc may be formatted as text, PDF
| or HTML from the same rivt file.
| A rivt report is the collated output of multiple
rivt report | docs into a single text or PDF file, or an HTML
| site. A Python script links and organizes docs
| into a structured report using rivt file numbering.
For an overview of rivt see here. To get started with running examples see install. For rivt and AI see here. Examples of a rivt file with text, PDF, and HTML output docs are provided in this tutorial. Other documents and examples may be downloaded from Google Drive.
The rivtlib Python package formats and compiles a rivt file to a text, PDF or HTML document (doc) in a few seconds. rivt file sections may be interactively executed, top down, in an IDE. Multiple rivt files may be compiled into a collated rivt report. This website is an example of an HTML rivt report. rivt files may be organized into rivtbooks with a common subject matter for efficient selection and inclusion in reports. A convenient interface for searching and downloading public rivt files on GitHub is here. . rivt reports and examples are also available at openmodels.info.
rivt produces organized, formatted engineering documents from active calculation files using reasonable defaults. Use cases are listed here. For static documents with rigid format requirements, including journal articles and books that do not need recalculation, Quarto is likely a better fit. For interactive calculation documents not intended for organized report publication Jupyter Notebooks is likely a better fit. A brief discussion of current engineering document tools and their strengths relative to the objectives of rivt is here.
ver: 1.0.0a18 (Note: rivt is currently alpha sofware. Some features are incomplete and markup tags, commands and assignments may change.)