Note: Analysis repo names should be prefixed with the year (ie 2024-noveltree-analysis
)
TODO: Briefly describe the core analyses performed in the repository and the motivation behind them.
This repository uses conda to manage software environments and installations. You can find operating system-specific instructions for installing miniconda here. After installing conda and mamba, run the following command to create the pipeline run environment.
TODO: Replace <NAME> with the name of your environment
mamba env create -n <NAME> --file envs/dev.yml
conda activate <NAME>
Developer Notes (click to expand/collapse)
-
Install your pre-commit hooks:
pre-commit install
This installs the pre-commit hooks defined in your config (
./.pre-commit-config.yaml
). -
Export your conda environment before sharing:
As your project develops, the number of dependencies in your environment may increase. Whenever you install new dependencies (using either
pip install
ormamba install
), you should update the environment file using the following command.conda env export --from-history --no-builds > envs/dev.yml
--from-history
only exports packages that were explicitly added by you (e.g., the packages you installed withpip
ormamba
) and--no-builds
removes build specification from the exported packages to increase portability between different platforms.
TODO: Add details about the description of input / output data and links to Zenodo depositions, if applicable.
TODO: Include a brief, step-wise overview of analyses performed.
Example:
- Download scripts using
download.ipynb
.- Preprocess using
./preprocessing.sh -a data/
- Run Snakemake pipeline
snakemake --snakefile Snakefile
- Generate figures using
pub/make_figures.ipynb
.
TODO: Describe what compute resources were used to run the analysis. For example, you could list the operating system, number of cores, RAM, and storage space.
See how we recognize feedback and contributions to our code.
This section contains information for developers who are working off of this template. Please adjust or edit this section as appropriate when you're ready to share your repo.
This template uses GitHub templates to provide checklists when making new pull requests. These templates are stored in the .github/ directory.
This template includes recommendations to VSCode users for extensions, particularly the ruff
linter. These recommendations are stored in .vscode/extensions.json
. When you open the repository in VSCode, you should see a prompt to install the recommended extensions.
This template uses a .gitignore
file to prevent certain files from being committed to the repository.
pyproject.toml
is a configuration file to specify your project's metadata and to set the behavior of other tools such as linters, type checkers etc. You can learn more here
This template automates linting and formatting using GitHub Actions and the ruff
linter. When you push changes to your repository, GitHub will automatically run the linter and report any errors, blocking merges until they are resolved.