Project Templates
Vaibify ships with two project templates that provide starting configurations for common use cases. Select a template when initializing a new project:
vaibify init --template <name>
Each template creates three files in the current directory: vaibify.yml,
container.conf, and workflow.json.
sandbox
An empty starting point for exploration, prototyping, and interactive use. No pipeline steps are defined — you work directly inside the container.
Includes:
Minimal
vaibify.ymlwith default Python version and base image.Empty
container.conf(no repositories).Empty
workflow.json(no pipeline steps).
Use this template when you want a containerized environment without a predefined workflow.
workflow
A starting point for reproducible data analysis pipelines. Includes an example step with data generation and plotting commands that you replace with your own.
Includes:
Minimal
vaibify.ymlwith default Python version and base image.Empty
container.conf(add your repositories).Example
workflow.jsonwith one step (AnalyzeData) that runspython runAnalysis.pyandpython makePlot.py.
Use this template when your project follows a defined sequence of analysis steps that should be reproducible.
Adding LaTeX compilation: If you compile your manuscript inside the
container rather than using an external tool like Overleaf, add a step
to workflow.json:
{
"sName": "CompileManuscript",
"sDirectory": "tex",
"bEnabled": true,
"bPlotOnly": false,
"saDataCommands": [],
"saDataFiles": [],
"saPlotCommands": ["latexmk -pdf manuscript.tex"],
"saPlotFiles": []
}
Creating Custom Templates
Templates are stored in the templates/ directory of the Vaibify package.
Each template is a subdirectory containing vaibify.yml,
container.conf, and workflow.json. To create a custom template, add a
new subdirectory with these three files and reinstall the package.