Skip to main content

Analyze protein sequences from the CLI — MW, pI, GRAVY, instability, domains, secondary structure, and PDB lookup.

Project description

🧬 ProteinPulse

Analyze protein sequences from the command line.

ProteinPulse is a fast, dependency-light CLI tool for protein sequence analysis. No internet connection required for core analysis — just paste a sequence and go.

PyPI version Python License: MIT CI


Features

Command What it does
analyze MW, pI, GRAVY, instability index, charge, extinction coefficient
domains Scan for zinc fingers, RGD, NLS, TM regions, glycosylation sites, and 20+ more motifs
structure Chou-Fasman secondary structure prediction (α-helix / β-sheet / coil)
pdb Fetch structure metadata from RCSB PDB
full All of the above in one shot

Installation

pip install proteinpulse

Requires Python 3.9+. No conda, no virtualenv required.


Quick Start

# Physicochemical properties
proteinpulse analyze MQIFVKTLTGKTITLEVEPSDTIENVKAKIQDKEGIPPDQQRLIFAGKQLEDGRTLSDYNIQKESTLHLVLRLRGG

# From a FASTA file
proteinpulse analyze my_protein.fasta

# Domain scan
proteinpulse domains MQIFVKTLTGKTITLEVEPSDTIENVKAKIQDKEGIPPDQQRLIFAGKQLEDGRTLSDYNIQKESTLHLVLRLRGG

# Secondary structure prediction
proteinpulse structure MQIFVKTLTGKTITLEVEPSDTIENVKAK

# Fetch PDB metadata
proteinpulse pdb 1UBQ

# Full report in one command
proteinpulse full MQIFVKTLTGKTITLEVEPSDTIENVKAKIQDKEGIPPDQQRLIFAGKQLEDGRTLSDYNIQKESTLHLVLRLRGG --pdb 1UBQ

# Save output as JSON
proteinpulse full my_protein.fasta --output json --save report.json

Output Formats

All commands support --output with three options:

  • table — rich, coloured terminal table (default)
  • json — machine-readable JSON
  • csv — flat CSV (for analyze and domains)

Use --save <file> to write output to disk.


Commands Reference

analyze

proteinpulse analyze SEQUENCE [--output table|json|csv] [--save FILE]

Computes:

  • Molecular weight (Da and kDa)
  • Isoelectric point (pI)
  • GRAVY hydrophobicity index (Kyte-Doolittle)
  • Instability index (Guruprasad et al.)
  • Net charge at pH 7
  • Extinction coefficient
  • Aromaticity and aliphatic index
  • Full amino acid composition

domains

proteinpulse domains SEQUENCE [--output table|json] [--save FILE]

Scans for 20+ motifs including: zinc fingers, RGD, KDEL/HDEL ER retention, nuclear localisation signals, transmembrane regions, N/O-glycosylation, phosphorylation sites (CK2, PKC, PKA), leucine zippers, EF-hands, SH2/SH3 binding, 14-3-3 binding, and more.

structure

proteinpulse structure SEQUENCE

Predicts α-helix, β-sheet, turn, and coil percentages using Chou-Fasman propensity scores.

pdb

proteinpulse pdb PDB_ID [--output table|json] [--save FILE]

Fetches title, experimental method, resolution, chain count, residue count, and deposition dates from RCSB PDB.

full

proteinpulse full SEQUENCE [--pdb PDB_ID] [--output table|json] [--save FILE]

Runs all analyses and optionally fetches a PDB entry.


Programmatic Use

from proteinpulse.sequence import load_sequence
from proteinpulse.properties import compute_properties
from proteinpulse.domains import scan_domains
from proteinpulse.structure import predict_secondary_structure

seq   = load_sequence("MQIFVKTLTGKTITLEVEPSDTIENVKAK")
props = compute_properties(seq)
hits  = scan_domains(seq)
struct = predict_secondary_structure(seq)

print(props.molecular_weight_kda)   # e.g. 3.24
print(props.isoelectric_point)      # e.g. 6.73
print([h.name for h in hits])       # e.g. ['SH3 binding (PXXP)']
print(struct.dominant)              # e.g. 'Alpha-Helix'

Development

git clone https://github.com/Eswar-mse/proteinpulse
cd proteinpulse
pip install -e ".[dev]"
pytest tests/ -v

License

MIT © ProteinPulse Contributors

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

proteinpulse-0.1.0.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

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

proteinpulse-0.1.0-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file proteinpulse-0.1.0.tar.gz.

File metadata

  • Download URL: proteinpulse-0.1.0.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proteinpulse-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e12a617113945abd70dc80655b3fc8ba9bfb54cdfdcd4e2226330b0df57cc809
MD5 09339ff4bf1148a27c359f621b97dd86
BLAKE2b-256 c5f0be9259d60a17709fac34bc0abbc4db2ef1340d1340b52577fb99a0940b0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteinpulse-0.1.0.tar.gz:

Publisher: publish.yml on Eswar-mse/proteinpulse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file proteinpulse-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: proteinpulse-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proteinpulse-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f439c590844a6a6e23ee585cf417c29b3c0fe22b1bf38055e5d582ceb21ccae1
MD5 b0b89485713fbc71e41424d385ca7908
BLAKE2b-256 7ae9be25963e1c938d5bd9b2410d73a312ec4fd9e1155418caa6a8cea7c7f6da

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteinpulse-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Eswar-mse/proteinpulse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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