I always find myself following a "copy & edit" pattern when making new Koza ingests, but we really should have a command line based ingest generator. This would replace the woefully out of date templates in monarch-ingest, and as a bonus it would be available to any project that uses Koza.
It should be something like koza create-ingest
It should have an interactive cli (like gh pr create) and should probably be optimized for making simple (one csv/tsv file) ingests quickly. For more complex ingests, it should be easy to bail out early to just get the empty files ready to add.
It would be very cool to detect the separator and column names (again, for the easiest case).
Next next next level would be if we could interactively question our way to which rows become which part of an entity, or populate the node / edge properties, but that also feels like where the diminishing returns kick in between the complexity to implement vs the convenience, so let's not go there.
I always find myself following a "copy & edit" pattern when making new Koza ingests, but we really should have a command line based ingest generator. This would replace the woefully out of date templates in monarch-ingest, and as a bonus it would be available to any project that uses Koza.
It should be something like
koza create-ingest
It should have an interactive cli (like
gh pr create
) and should probably be optimized for making simple (one csv/tsv file) ingests quickly. For more complex ingests, it should be easy to bail out early to just get the empty files ready to add.It would be very cool to detect the separator and column names (again, for the easiest case).
Next next next level would be if we could interactively question our way to which rows become which part of an entity, or populate the node / edge properties, but that also feels like where the diminishing returns kick in between the complexity to implement vs the convenience, so let's not go there.