drylab init

  • Initializes a new DryLab project in a new directory.

  • Creates drylab.config.json and scaffolds the full folder structure (data, code, output, logs).

Usage

drylab init <projectName> [options]

Options

Flag
Description

--pdf <path>

Local path to paper PDF

--doi <doi>

DOI of the paper

--api-key <name>

The name of your Gemini API key in your .env file

--env-file <path>

Path to .env file (default: .env)

  • If both --pdf and --doi are provided, the PDF is used

  • The target project directory must not already exist

What it does

  • creates a new directory named <projectName>

  • builds subfolders: paper/, data/, code/, output/, logs/

  • writes drylab.config.json with metadata + paths

  • pulls paper metadata from DOI or PDF if provided

  • optionally stores your Gemini API key name (for .env-based access)

Output directory structure

my-project/
├── drylab.config.json
├── paper/
├── data/
├── code/
├── output/
└── logs/

Config file snapshot

{
  "doi": "10.1038/s41592-020-01005-z",
  "pdfPath": "./paper.pdf",
  "apiKey": "GEMINI_API_KEY",
  "dataDir": "./data",
  "codeDir": "./code",
  "outputDir": "./output",
  "logDir": "./logs",
  "envFileName": "env.yaml"
}

Examples

drylab init my-project --pdf ./paper.pdf --api-key GEMINI_API_KEY
drylab init my-project --doi 10.1038/s41592-020-01005-z

Last updated