Skip to main content

A CLI for downloading SAbDab data.

Project description

SAbDab CLI

PyPI version Python versions License: MIT Ruff

A fast, multithreaded CLI for downloading data from SAbDab (the Structural Antibody Database).

This tool is an alternative to the SAbDab downloader script.

Highlights

  • Concurrent Downloads: High-performance async I/O for rapid data acquisition.
  • 🛡️ Robust Retries: Built-in exponential backoff for transient network issues.
  • 📊 Rich Progress: Beautiful terminal progress bars and informative feedback.
  • 📦 Atomic Writes: Prevents data corruption by using temporary files during downloads.

Installation

With uv (recommended):

uv add sabdab-cli

With pip:

pip install sabdab-cli

Or run directly without installing:

uvx sabdab-cli download -s summary.csv -o ./data --original-pdb

HTTP/2 Support (Optional)

For potentially faster downloads using HTTP/2, install with the http2 extra:

uv add "sabdab-cli[http2]"

Usage

You can invoke with sabdab-cli or sabdabc.

Download selected data types for entries in a SAbDab summary file:

sabdab-cli download \
  --summary-file summary.csv \
  --output-path ./data \
  --original-pdb \
  --chothia-pdb \
  --sequences \
  --annotation \
  --threads 10

Available Data Types

Flag Description
--original-pdb Original PDB structures
--chothia-pdb Chothia-renumbered PDB structures
--sequences Sequence FASTA files
--annotation Chothia-numbered sequence annotations
--abangle AbAngle orientation angles
--imgt IMGT annotations

Summary File Format

The --summary-file (or -s) argument should be a TSV or CSV file containing at least the following columns: pdb, Hchain, Lchain, and model. See the test summary file for an example.

Performance Tuning

By default, sabdab-cli uses adaptive concurrency based on your CPU count. You can manually adjust this for your environment:

# High-concurrency mode (e.g., 20 threads)
sabdabc download -s summary.csv -o ./data --original-pdb --threads 20

# Synchronous mode (single thread)
sabdabc download -s summary.csv -o ./data --original-pdb --threads 1

# Enable HTTP/2 for faster downloads (requires sabdab-cli[http2])
sabdabc download -s summary.csv -o ./data --original-pdb --http2

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sabdab_cli-0.1.1.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sabdab_cli-0.1.1-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file sabdab_cli-0.1.1.tar.gz.

File metadata

  • Download URL: sabdab_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for sabdab_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 62af290e9af4cb44b07824dc05d558c0843451ff70d6c1e4c2c7ccc52dbd2dde
MD5 85c3f7b95174e9fdd5ffb8f47565c2cb
BLAKE2b-256 e52b7b53844330f83ae260a2bb00ad4f7b437bd9880e330d66ce64b2cad1ad04

See more details on using hashes here.

File details

Details for the file sabdab_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: sabdab_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for sabdab_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ccfe25130cc0dd6aaea3efa04f56c23f5becf1b1fb1867eb38f60c73f9d0f5f6
MD5 47227ca2c69dd1c82f397dd20cec2261
BLAKE2b-256 e1b35641d4e32cdce26bc02aefa719a8ee144066a7b6bcd6edb393ee25b67a1f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page