Skip to content

Quick Start Guide

This guide will walk you through creating your first bioinformatics project with BPM. You'll learn the basic workflow and see how BPM can streamline your project management.

Prerequisites

Before starting, ensure you have:

  • BPM installed and configured
  • A BPM repository with templates (we'll use the example repository)

Step 1: Initialize Your First Project

Start by creating a new bioinformatics project with BPM:

bpm init 240101_RNAseq_Analysis_Institute_Research

This command creates a new project with the standardized naming format: YYMMDD_ProjectName_Institute_Application

The project will be created in your current directory with the following structure:

240101_RNAseq_Analysis_Institute_Research/
├── project.yaml          # Project configuration
├── README.md            # Project documentation
└── .gitignore          # Git ignore file

Step 2: Add a Repository

BPM works with external repositories that contain templates and workflows. Let's add a repository:

# Add a local repository
bpm repo add /path/to/your/bpm_repository

# Or add from GitHub (if available)
bpm repo add https://github.com/username/bpm-repo.git

# Or use the example repository
bpm repo add https://github.com/IZKF-Genomics/BPM_repo.git

List available repositories:

bpm repo list

Select an active repository:

bpm repo select repository_name

Step 3: Explore Available Templates

See what templates are available in your repository:

bpm generate --list

You should see output like:

Available templates:
  demultiplexing:bclconvert
  nfcore:rnaseq
  workflows:generate_nfcore_rnaseq_samplesheet

Step 4: Generate Files from a Template

Generate project files using a template. For example, to create a demultiplexing setup:

bpm generate demultiplexing:bclconvert --project project.yaml

This will create files based on the template, such as: - Configuration files - Scripts - Sample sheets - Documentation

Step 5: Run a Workflow

Execute a bioinformatics workflow:

bpm run workflows:generate_nfcore_rnaseq_samplesheet --project project.yaml

This will run the specified workflow and generate outputs in your project directory.

Step 6: Update Template Outputs

If you need to regenerate files from a template (e.g., after configuration changes):

bpm update --template demultiplexing:bclconvert --project project.yaml

Step 7: View Project Information

Check your project status and configuration:

bpm info --project project.yaml

This shows: - Project metadata - Active repository - Generated files - Configuration settings

Complete Example Workflow

Here's a complete example of setting up an RNA-seq analysis project:

# 1. Initialize project
bpm init 240101_RNAseq_Study_Institute_Research

# 2. Add repository
bpm repo add https://github.com/IZKF-Genomics/BPM_repo.git

# 3. Generate RNA-seq template
bpm generate nfcore:rnaseq --project project.yaml

# 4. Run sample sheet generation
bpm run workflows:generate_nfcore_rnaseq_samplesheet --project project.yaml

# 5. Check project status
bpm info --project project.yaml

Project Structure

After running these commands, your project will have a structure like:

240101_RNAseq_Study_Institute_Research/
├── project.yaml
├── README.md
├── .gitignore
├── config/
│   └── nfcore_rnaseq.yaml
├── scripts/
│   └── run_rnaseq.sh
├── samplesheet.csv
└── outputs/
    └── samplesheet_generated.csv

Key Concepts

Project Naming Convention

BPM uses a standardized naming format: YYMMDD_ProjectName_Institute_Application

  • YYMMDD: Date in YYMMDD format
  • ProjectName: Descriptive project name
  • Institute: Your institution or organization
  • Application: Type of analysis or application

Template System

Templates are organized as section:name: - section: Category (e.g., demultiplexing, nfcore) - name: Specific template (e.g., bclconvert, rnaseq)

Repository Management

BPM repositories contain: - Templates: File generation templates - Workflows: Executable workflows - Configuration: Repository-specific settings

Example BPM Repository

The IZKF-Genomics/BPM_repo serves as an example of how to create a BPM repository for your organization. It contains: - Templates for common bioinformatics workflows - Example workflows for sample sheet generation - Configuration files for the UKA IZKF Genomics Facility - Documentation on how to customize for your team

Next Steps

Now that you've completed the quick start:

  1. Explore Templates: Try different templates in your repository
  2. Customize Configurations: Modify generated files for your specific needs
  3. Learn Advanced Features: Read the User Guide
  4. Create Your Own Templates: See the Admin Guide

Troubleshooting

If you encounter issues:

  • Check that your BPM_CACHE environment variable is set correctly
  • Ensure your repository contains valid templates and workflows
  • Verify that your project.yaml file is properly formatted
  • See Common Issues for solutions

Getting Help