Crates.io | kerblam |
lib.rs | kerblam |
version | 1.1.1 |
source | src |
created_at | 2024-02-01 16:20:11.665801 |
updated_at | 2024-10-14 09:39:02.102412 |
description | A project management tool for data science and bioinformatics |
homepage | https://github.com/MrHedmad/kerblam |
repository | https://github.com/MrHedmad/kerblam |
max_upload_size | |
id | 1123317 |
size | 215,799 |
Wherever you have input data that needs to be processed to obtain some output, Kerblam! can help you out by dealing with the more tedious and repetitive parts of working with data for you, letting you concentrate on getting things done.
Kerblam! lets you work reproducibly, rigorously and quickly for big and small projects alike: from routine data analysis to large, multi-workflow projects.
You can watch a demo of what Kerblam! can do for you, or you can jump right in by reading the quickstart guide. If you are here often, you might need the installation command.
These are some of the features of Kerblam!:
kerblam new
.
Kerblam generates the folder structure of your project using sensible defaults,
similar to what cookiecutter
does.make
, but can manage
anything that can be executed via the command line.kerblam package
packages your pipelines and exports a container
image for execution later. This leaves a tarball with all the data a
reproducer needs to run the analysis again, so they may do so quickly and
easily. The reproducer can use the reply tarball manually, or also let Kerblam!
un-package the project for them.Kerblam! is not and does not want to be:
snakemake
, nextflow
or cwltool
;
git
, docker
or podman
,
pre-commit
, etc...);.gitignore
, .dockerignore
, pipes or container recipies to check
for errors or potential issues;kerblam package
to work);Kerblam! wants to streamline and standardize data analysis projects as much as possible. For this reason, projects are opinionated:
kerblam.toml
.
Read more about it here.make
, but nothing stops you writing
shell files that execute other tools, like snakemake
.docker
or podman
as your virtualisation service.git
as your version control system.If you don't like this setup, Kerblam! is probably not for you.
[!TIP] If you wish to learn more on why these design choices were made, please take a look at the kerblam! philosophy.
The full Kerblam! documentation is online at kerblam.dev 🚀. Please take a look there for more information on what Kerblam! can do.
You might find the quickstart interesting. It provides an overview of what Kerblam! is and does with an hands-on project.
[!WARNING] Release candidates (e.g.
1.0.0-rc.x
) are not available on crates.io! Use the pre-compiled binaries in the releases tab, the command below or compile directly from git withcargo install --git https://github.com/MrHedmad/kerblam
.
In short, use a unix-compatible OS and either:
# Install a prebuilt binary
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/MrHedmad/kerblam/releases/latest/download/kerblam-installer.sh | sh
or, alternatively
# Install from source with rustc and cargo
cargo install kerblam
You will need git
, make
and docker
or podman
installed for Kerblam! to work.
To contribute, please take a look at the contributing guide.
Code is not the only thing that you can contribute. Written a guide? Considered a new feature? Wrote some docstrings? Found a bug? All of these are meaningful and important contributions. For this reason, all contributors are listed in the contributing guide.
If you use Kerblam! or want to add your opinion to the direction it is taking, take a look at the issues labelled with RFC. They are requests for comments where you can say your opinion on new features.
Thank you for taking an interest in Kerblam! Any help is greatly appreciated.
Kerblam! is licensed under the MIT License. If you wish to cite Kerblam!, please provide a link to this repository or use the Zenodo DOI 10.5281/zenodo.10664806
This project is named after the fictitious online shop/delivery company in S11E07 of Doctor Who. Kerblam! might be referred to as Kerblam!, Kerblam or Kerb!am, interchangeably, although Kerblam! is preferred. The Kerblam! logo is written in the Kwark Font by tup wanders.
And remember! If you want it...