The general vision would be to have a number of different modules (or some other name if you'd prefer) that can be applied to decorate the current data structure. For example, the frequencies module could decorate nodes with frequency trajectories given a tree with dated tips. The ancestral module could decorate nodes with sequence states given a tree with sequences at the tips. We want modules that can be included or not in a pipeline without messing up downstream modules. I could even imagine explicit build requirements, where the frequencies module requires that the tree module have ran. These modules could live in the modules/ directory.
There would then be a separate set of pipelines (or some other name if you'd prefer) that load these modules. These would live in a pipelines/ directory, within which would be things like pipelines/zika/ and pipelines/flu. I actually think that titers would be a general module rather than living in the flu/ directory as the titers module may work well for dengue or B cells. I'm calling these pipelines rather than viruses because we could well end up with Salmonella or whatever as entries.
I think it makes the most sense for metadata to live alongside pipelines, like pipelines/zika/zika.py and pipelines/zika/metadata/, but I'm not sure.
The general vision would be to have a number of different modules (or some other name if you'd prefer) that can be applied to decorate the current data structure. For example, the
frequenciesmodule could decorate nodes with frequency trajectories given a tree with dated tips. Theancestralmodule could decorate nodes with sequence states given a tree with sequences at the tips. We want modules that can be included or not in a pipeline without messing up downstream modules. I could even imagine explicit build requirements, where thefrequenciesmodule requires that thetreemodule have ran. These modules could live in themodules/directory.There would then be a separate set of pipelines (or some other name if you'd prefer) that load these modules. These would live in a
pipelines/directory, within which would be things likepipelines/zika/andpipelines/flu. I actually think thattiterswould be a general module rather than living in theflu/directory as thetitersmodule may work well for dengue or B cells. I'm calling these pipelines rather than viruses because we could well end up with Salmonella or whatever as entries.I think it makes the most sense for metadata to live alongside pipelines, like
pipelines/zika/zika.pyandpipelines/zika/metadata/, but I'm not sure.