A grow-as-you-need template for data science, bioinformatics, and academic-research projects.
abc-project-template is a Copier template
built around a Garden model: most capabilities are dormant when you scaffold,
and you grow them on demand. This keeps new projects focused while preserving
the full spectrum of tooling for when you need it.
copier copy --trust gh:abc-cluster/abc-project-template my-project
cd my-project
just tour # 5-line orientation
just doctor # check tools- ✅ A flat, navigable project structure — no
analysis/wrapper; top-levelnotebooks/,data/,src/,pipelines/,tests/,writeup/ - ✅ 70+ dormant components in
.garden/— grow only what you need - ✅ Curated bundles (
just grow preset:bioinformatics) for common workflows - ✅ Cross-platform recipes (bash + PowerShell pairing where it matters)
- ✅ CI-gated safety net — every change verified against 54 CTT scenarios
just garden # what's planted vs dormant
just garden-list dormant # browse 70+ available components
just grow data:features # plant a component
just grow preset:bioinformatics # plant a curated bundle
just prune <component> # archive back to dormant
just replant # apply project_type defaultsThe full template ships in every project, but most of it sleeps in .garden/
until you wake it. Adding capability is one command. Removing it is one
command. The active root stays small until you decide otherwise.
- 📖 USAGE.md — comprehensive user guide
- 🌐 Documentation site — Docusaurus, with:
- Get-started guide
- Penguins tutorial (end-to-end walkthrough: scaffold → EDA → features → model → manuscript)
- Reference docs (Garden, components, CLI, justfile, copier options, ...)
my-project/
├── notebooks/ exploratory work
├── data/ raw / intermediate / primary / reports
├── src/ importable library code
├── scripts/ operational scripts
├── pipelines/ DVC + Nextflow + Snakemake
├── tests/ test suite
├── writeup/
│ └── manuscript/ active by default; other formats via `just grow writeup:*`
├── config/ project-level configs
├── tasks/ modular justfile recipes (one file per area)
└── .garden/ seed bank — dormant components
Plus standard tool config at root: pyproject.toml, pixi.toml,
environment.yml, dvc.yaml, .pre-commit-config.yaml, etc.
| Choice | Auto-plants |
|---|---|
| Minimal Starter | core:base only |
| Full Academic Project | core + 12 data/writeup/infra/pipeline components |
| Analysis Only | core + 6 data: + infra:env-setup |
| Manuscript Only | core + 5 writeup formats |
| Package Development | core + build:bazel + infra:env-setup |
| Custom | core only — user grows the rest |
Plus named presets (plant after scaffold via just grow preset:<name>):
bioinformatics, ml-research, academic-writing, full-academic.
- Python 3.10+
copier(pipx install copier)just(brew install just/cargo install just)- Optional:
pixi,uv,dvc,quarto
See USAGE.md §1 for full install instructions.
tests/— CTT safety net + phase docscopier.yml— scaffold question definitionstemplate/— the actual template filestemplate/.garden/— seed bank (component definitions)tests/PHASE-*-COMPLETE.md— per-phase implementation historytests/FUTURE-GO-PORT.md— long-term plan to rewritegarden.pyas a Go binarywebsite/— Docusaurus documentation site source
This template grew out of earlier personal scaffolding work (analyze-and-publish-template)
and was substantially rebuilt through iterative AI-assisted development across multiple
design phases. The Garden model, seed-bank architecture, and cross-platform tooling
represent a significant departure from that starting point, but the original project
provided the initial structure and direction.
The template draws on the broader ecosystem of community tools that make this kind of work possible: Copier for template management, Just as the task runner backbone, Quarto for reproducible manuscripts, Pixi for environment management, DVC for data versioning, Nextflow and nf-core for pipeline conventions, and nf-nomad as the executor. We are grateful to the authors and maintainers of all these projects.
MIT — see LICENSE.