skillfed

propka

Heuristic pKa calculations with ligands

propka v3.5.1 436.8K downloads/30d#6,673 on PyPI
Copyleft license LGPL v2.1 DORMANT released

What it is and what it does

PROPKA is a mature bioinformatics library that calculates pKa values—the pH at which ionizable amino acid residues protonate or deprotonate—directly from protein 3D structures. It uses empirical heuristics calibrated on experimental data and handles both standalone proteins and protein-ligand complexes. The method is described in peer-reviewed literature and has been in use since at least 2011.

The package provides both a command-line interface and a Python API for integration into computational workflows. It requires only a PDB structure file as input and has no external runtime dependencies, making it straightforward to install and use in analysis pipelines. However, the project shows dormant maintenance (last release January 2024, no recent commits tracked), so users should verify that its predictions meet their accuracy requirements before relying on it for new research.

Use it for:

  • Calculate protonation states of proteins at physiological pH for molecular dynamics simulations or docking studies.
  • Predict ionizable residue pKa shifts caused by protein-ligand binding to understand binding thermodynamics.
  • Batch-process PDB structures to generate pKa tables for structural biology databases or annotation pipelines.
  • Rationalize experimental pH-dependent protein behavior by mapping predicted pKa values to observed titration curves.
  • Prepare protein structures for pH-dependent computational studies by assigning appropriate protonation states.

Worth the install?

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

PROPKA predicts pKa values of ionizable groups in proteins and protein-ligand complexes from 3D structure using empirical heuristics.

Yes, if you need offline pKa prediction from PDB structures and can verify the method's accuracy for your use case. The package is mature, has no dependencies, and installs easily. However, dormant maintenance and lack of recent commits mean you should test predictions against your own data or literature benchmarks before using results in new publications. The LGPL copyleft license requires derivative works to remain open-source.

Install

propka on PyPI

pip

pip install propka

uv

uv add propka

poetry

poetry add propka

Installing propka

Before you install

Low install friction with no runtime dependencies. Dormant maintenance status (955 days since last release) but marked mature and supporting current Python versions through 3.12.

License in practice

Licensed under LGPL v2.1 (copyleft). Derivative works and modifications must be distributed under the same license; static linking or bundling requires careful compliance review.

Quickstart

pip install propka

from propka.molecular_container import MolecularContainer
mol = MolecularContainer('protein.pdb')
mol.calculate_pka()

Requires a valid PDB structure file as input; PROPKA is a command-line and library tool for offline calculation, not a web service.

Verify before relying

  • Whether the dormant status (no commits tracked) reflects genuine maintenance or only PyPI release infrequency.
  • Performance characteristics and accuracy benchmarks for modern protein structures or large complexes.
  • Whether ligand handling in version 3.1+ is production-ready or still experimental.

Package facts

License LGPL v2.1 (copyleft)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 955 days since the last release
First released
Downloads 436,779/month — #6,673 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: propka-3.5.1-py3-none-any.whl

Keywords: science

Development Status :: 6 - MatureEnvironment :: ConsoleIntended Audience :: Science/ResearchLicense :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2)Operating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: Bio-InformaticsTopic :: Scientific/Engineering :: Chemistry

Tags

pka prediction proteinionizable groups pkaprotein ligand pkastructural pka calculationprotein protonation stateempirical pka estimation3d structure pka
structural-biologycomputational-chemistrypka-prediction

More Bio-Informatics packages