Skip to main content
. 2021 Jan 30;6(1):ysab006. doi: 10.1093/synbio/ysab006

Figure 4.

Figure 4.

Krill protocol. An example of Krill protocol code and its corresponding rendered protocol instructions. Operation types have four sets of code that govern operation behavior and scheduling: Krill protocol, precondition, documentation and cost. (a) Shown here is a snippet of Krill protocol code for the load template step in a PCR amplification protocol with lettering highlighting aspects of the code. Operations are batched into a single job; when the job is executed, Krill code can access the input and output information of all batched operations. (i) In this simple example, the template volume is calculated for each operation before generating instructions for loading template DNA into wells. (ii) A new protocol step is rendered with a show block. (i–vii) Within the show block, various elements are rendered for the technician. (iii, iv) A title is displayed and has two checkboxes. Checkboxes must be checked before proceeding to the next step, forcing the user to be attentive. Operations are iterated to display a table that uses the computed template volume, inputs and outputs of the operations. (v) Tables can be interactive and may include text inputs or checkable boxes. (vi) A visible warning is displayed. (vii) A selection input instructs the user to select from a list of options; numerical, textual and file upload inputs are also possible through Krill. (viii) Finally, an SVG graphics element can be rendered on the fly using operation information. (b) Optional precondition code governs when operations can be scheduled into jobs. Cost model computes monetary costs prior to plan launch and documentation provides readable instruction about the underlying protocol.