skillfed

peppy

A python-based project metadata manager for portable encapsulated projects

peppy v0.40.8 117.9K downloads/30d#12,144 on PyPI40
Permissive license BSD2 Active released

What it is and what it does

peppy is a Python library for reading and managing Portable Encapsulated Projects (PEPs), a standardized metadata format used in bioinformatics to organize project configuration, sample metadata, and workflow parameters. It parses PEP YAML files and provides programmatic access to project structure and sample information, making it useful for building reproducible bioinformatics pipelines and managing large-scale sequencing experiments.

The package depends on pandas, pyyaml, rich, ubiquerg, numpy, and pephubclient to handle data manipulation, YAML parsing, terminal output formatting, and integration with external project repositories. It targets bioinformatics workflows and is actively maintained, with support for Python 3.8 through 3.12.

Use it for:

  • Load and parse PEP metadata files to configure bioinformatics analysis pipelines
  • Access sample metadata and project configuration programmatically in workflow scripts
  • Validate project structure and metadata consistency before running analyses
  • Integrate project metadata into reproducible research workflows
  • Build tools that manage large-scale sequencing experiments with standardized metadata

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

peppy reads and manages Portable Encapsulated Projects (PEPs)—a metadata format for organizing bioinformatics workflows and sequencing projects—providing Python access to project configuration and sample metadata.

Yes, if you work with bioinformatics projects using the PEP standard or need to manage project metadata in Python workflows. Low install friction, active maintenance, permissive license, and no known vulnerabilities make it a safe choice. Not relevant for non-bioinformatics use cases.

Install

peppy on PyPI

pip

pip install peppy

uv

uv add peppy

poetry

poetry add peppy

Installing peppy

Before you install

Low install friction; pure Python wheel with six runtime dependencies. Actively maintained as of August 2026, with a recent release in October 2025.

License in practice

BSD2 license is permissive; you can use, modify, and distribute peppy with minimal legal constraints, provided you include the license notice.

Quickstart

pip install peppy

import peppy
project = peppy.Project('path/to/pep.yaml')
samples = project.samples

Verify before relying

  • Whether pephubclient dependency requires network access or external service connectivity
  • Specific Python version floor (requires_python is unspecified in metadata)

Package facts

License BSD2 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 6 — pandas, pyyaml, rich, ubiquerg, numpy, pephubclient
Maintenance actively maintained — 298 days since the last release
Last repo commit
First released
Downloads 117,880/month — #12,144 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: peppy-0.40.8-py3-none-any.whl

Keywords: project, metadata, bioinformatics, sequencing, ngs, workflow

Development Status :: 4 - BetaLicense :: OSI Approved :: BSD LicenseProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: Bio-Informatics

Tags

project metadata managerbioinformatics project configurationPEP format readerworkflow project managementsample metadata handlerportable encapsulated projectssequencing project metadata
bioinformaticsmetadata-managementworkflow-orchestration

More Bio-Informatics packages