This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
ClinicoPath is a comprehensive jamovi module for clinicopathological research analysis. It provides statistical analysis tools specifically designed for pathology and clinical research, including survival analysis, decision analysis, descriptive statistics, and specialized plots.
This is a jamovi R module with a specific 4-file architecture pattern:
.b.R
files: Backend implementation classes (e.g., crosstable.b.R
, survival.b.R
).a.yaml
files: Analysis definitions with options/parameters (e.g., crosstable.a.yaml
).u.yaml
files: User interface definitions (e.g., crosstable.u.yaml
).r.yaml
files: Results/output definitions (e.g., crosstable.r.yaml
).h.R
files: Auto-generated header files (compiled from .yaml files)All analysis classes inherit from auto-generated base classes and use R6 class system:
crosstableClass <- R6::R6Class(
"crosstableClass",
inherit = crosstableBase, # Auto-generated from .yaml files
private = list(
.init = function() { ... },
.run = function() { ... }
)
)
# Run all tests
Rscript -e "devtools::test()"
# Run specific test file
Rscript -e "testthat::test_file('tests/testthat/test-roc.R')"
# Check package
Rscript -e "devtools::check()"
# Build package
Rscript -e "devtools::build()"
# Install development version
Rscript -e "devtools::install()"
# Build jamovi module (.jmo file)
# This requires jamovi development tools
Rscript -e "jmvtools::prepare()"
Rscript -e "devtools::document()"
Rscript -e "jmvtools::install()"
# Install module in jamovi for testing
# Copy .jmo file to jamovi modules directory
Most modules follow this pattern:
janitor::clean_names()
labelled::set_variable_labels()
tableone
, summarydata
, reportcat
, benford
crosstable
, chisqposttest
agepyramid
, alluvial
, vartree
, venn
waterfall
, swimmerplot
survival
, survivalcont
, multisurvival
, oddsratio
, singlearm
agreement
, icccoeff
decision
, decisioncalculator
, nogoldstandard
, decisioncompare
psychopdaroc
, roc
kappasizeci
, kappasizefixedn
, kappasizepower
jjbetweenstats
, jjwithinstats
, jjdotplotstats
jjbarstats
, jjpiestats
jjcorrmat
, jjscatterstats
.a.yaml
, .u.yaml
, .r.yaml
, .b.R
jamovi/0000.yaml
tests/testthat/
data/
directory (many .csv, .omv, .rda files)vignettes/
directory using R Markdown/QuartoR/
: Backend R code (.b.R analysis classes, utility functions)jamovi/
: Module definitions (.yaml files)data/
: Example datasets in multiple formatsman/
: Auto-generated documentationinst/extdata/
: Additional example data filesvignettes/
: Documentation and tutorialsAdd the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.