{"id":13958614,"url":"https://github.com/pharmai/plip","last_synced_at":"2026-02-18T23:33:02.337Z","repository":{"id":24668540,"uuid":"28078987","full_name":"pharmai/plip","owner":"pharmai","description":"Protein-Ligand Interaction Profiler - Analyze and visualize non-covalent protein-ligand interactions in PDB files according to 📝 Schake, Bolz, et al. (2025), https://doi.org/10.1093/nar/gkaf361","archived":false,"fork":false,"pushed_at":"2025-10-30T13:40:15.000Z","size":9436,"stargazers_count":638,"open_issues_count":55,"forks_count":134,"subscribers_count":17,"default_branch":"master","last_synced_at":"2026-01-26T17:08:44.017Z","etag":null,"topics":["bioinformatics","docker","openbabel","pdb","plip","protein-structure","python-bindings","scientific-computing","singularity"],"latest_commit_sha":null,"homepage":"https://plip-tool.biotec.tu-dresden.de/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pharmai.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.txt","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-12-16T09:06:43.000Z","updated_at":"2026-01-25T06:33:24.000Z","dependencies_parsed_at":"2024-06-19T00:10:40.108Z","dependency_job_id":"a48df9f0-936e-4ade-bd8b-9579833005de","html_url":"https://github.com/pharmai/plip","commit_stats":{"total_commits":430,"total_committers":20,"mean_commits":21.5,"dds":0.5023255813953489,"last_synced_commit":"0ed71ae0009ae15772fd0377765cccd399e80b7c"},"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"purl":"pkg:github/pharmai/plip","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pharmai%2Fplip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pharmai%2Fplip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pharmai%2Fplip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pharmai%2Fplip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pharmai","download_url":"https://codeload.github.com/pharmai/plip/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pharmai%2Fplip/sbom","scorecard":{"id":730605,"data":{"date":"2025-08-11","repo":{"name":"github.com/pharmai/plip","commit":"e4181b2c40fe5938b5f39aaf00ae3ea9d14ac9cd"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.2,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/action.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 3/8 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: GNU General Public License v2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2.4.0 not signed: https://api.github.com/repos/pharmai/plip/releases/191443438","Warn: release artifact v2.3.0 not signed: https://api.github.com/repos/pharmai/plip/releases/117961540","Warn: release artifact v2.2.2 not signed: https://api.github.com/repos/pharmai/plip/releases/43037164","Warn: release artifact v2.2.1 not signed: https://api.github.com/repos/pharmai/plip/releases/42846674","Warn: release artifact v2.4.0 does not have provenance: https://api.github.com/repos/pharmai/plip/releases/191443438","Warn: release artifact v2.3.0 does not have provenance: https://api.github.com/repos/pharmai/plip/releases/117961540","Warn: release artifact v2.2.2 does not have provenance: https://api.github.com/repos/pharmai/plip/releases/43037164","Warn: release artifact v2.2.1 does not have provenance: https://api.github.com/repos/pharmai/plip/releases/42846674"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":0,"reason":"10 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-55x5-fj6c-h6m8","Warn: Project is vulnerable to: PYSEC-2021-19 / GHSA-jq4v-f5q6-mjqq","Warn: Project is vulnerable to: PYSEC-2020-62 / GHSA-pgww-xf46-h92r","Warn: Project is vulnerable to: PYSEC-2022-230 / GHSA-wrxv-2j5q-m38w","Warn: Project is vulnerable to: PYSEC-2018-12 / GHSA-xp26-p53h-6h2p","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: GHSA-6p56-wp2h-9hxr","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/action.yml:7"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/action.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/pharmai/plip/action.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/action.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/pharmai/plip/action.yml/master?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:1: pin your Docker image by updating debian:stable to debian:stable@sha256:cd50e36013f749a1f86c6369b873e1ad607335480dc4bc2905396ec17ab0ce02","Warn: containerImage not pinned by hash: Dockerfile.20.04:1","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T14:18:23.815Z","repository_id":24668540,"created_at":"2025-08-22T14:18:23.815Z","updated_at":"2025-08-22T14:18:23.815Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29598254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T22:25:43.180Z","status":"ssl_error","status_checked_at":"2026-02-18T22:25:42.766Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bioinformatics","docker","openbabel","pdb","plip","protein-structure","python-bindings","scientific-computing","singularity"],"created_at":"2024-08-08T13:01:46.457Z","updated_at":"2026-02-18T23:33:02.311Z","avatar_url":"https://github.com/pharmai.png","language":"Python","readme":"# Protein-Ligand Interaction Profiler (PLIP)\n\n![PLIP Build](https://github.com/pharmai/plip/workflows/PLIP%20Build/badge.svg)\n![GitHub](https://img.shields.io/github/license/pharmai/plip?style=social)\n![GitHub All Releases](https://img.shields.io/github/downloads/pharmai/plip/total?style=social)\n![Docker Pulls](https://img.shields.io/docker/pulls/pharmai/plip?style=social\u0026logo=docker)\n![Docker Image Size (tag)](https://img.shields.io/docker/image-size/pharmai/plip/latest?style=social\u0026logo=docker)\n\nAnalyze noncovalent protein-ligand interactions in 3D structures with ease.\n\n\u003cimg src=\"pliplogo.png\"  alt=\"PLIP Logo\" height=\"100\"\u003e\n\n\n| Use Case                                                                  | [Web Server](https://plip-tool.biotec.tu-dresden.de)         | Docker              | Singularity        | Python Module       | [Colab](https://colab.research.google.com/drive/1KV0Yx6vMFXvtyIRtmkPoMLN0Q6GKG1pm?usp=sharing) |\n|---------------------------------------------------------------------------|--------------------|--------------------|--------------------|--------------------|--------------------|\n| \"I want to analyze my protein-ligand complex!\"                            | :heavy_check_mark: | :heavy_check_mark: | :yellow_circle:    | :x:                | :heavy_check_mark: |\n| \"I want to analyze *a billion* protein-ligand complexes!\"                 | :x:                | :yellow_circle:    | :heavy_check_mark: | :yellow_circle:    | :x:                |\n| \"I love the Linux command line and want to build a workflow around PLIP!\" | :x:                | :heavy_check_mark: | :heavy_check_mark: | :yellow_circle:    |:x:                |\n| \"I'm a Python programmer and want to use PLIP in my project!\"             | :x:                | :yellow_circle:    | :yellow_circle:    | :heavy_check_mark: | :yellow_circle:    |\n| \"I want to analyze large complexes!\"             | :x:                | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |\n\n---\n\n## Quickstart\n\n### Docker\nIf you have Docker installed, you can run a PLIP analysis for the structure `1vsn` with the following shell command:\n\nOn Linux / MacOS:\n```bash\n$ docker run --rm \\\n    -v ${PWD}:/results \\\n    -w /results \\\n    -u $(id -u ${USER}):$(id -g ${USER}) \\\n    pharmai/plip:latest -i 1vsn -yv\n```\n\nOn Windows:\n```bash\n$ docker run --rm \\\n    -v ${PWD}:/results \\\n    -w /results \\\n    -u $(id -u ${USER}):$(id -g ${USER}) \\\n    pharmai/plip:latest -i 1vsn -yv\n```\n### Singularity\n\nThe equivalent command for our pre-built [Singularity](https://singularity.lbl.gov/) image for Linux (available under [Releases](https://github.com/pharmai/plip/releases)) is as follows:\n\n```bash\n$ ./plip.simg -i 1vsn -yv\n```\n\nSingularity allows to use PLIP with ease in HPC environments. Note that you need to have Singularity installed on your base system.\n\n### Google Colab \nPLIP is available as a [Google Colab](https://colab.research.google.com/drive/1KV0Yx6vMFXvtyIRtmkPoMLN0Q6GKG1pm?usp=sharing) to be used without the need to install it locally. It can be used without constraints in terms of \nPDB file and protein sizes. \n\n---\n\n## Usage\n\nThis README provides instructions for setup and using basic functions of PLIP.\nFor more details, see the [Documentation](DOCUMENTATION.md).\n\n### 1. Install PLIP\n\n#### Containerized Image (recommended)\n:exclamation: We ship PLIP as pre-built containers for multiple architectures (amd64/ARM), available on the [Docker Hub](https://hub.docker.com/r/pharmai/plip) or as pre-built Singularity image under [Releases](https://github.com/pharmai/plip/releases). See the quickstart section above for usage instructions.\n\n#### Dependencies\nIf you cannot use the containerized bundle or want to use PLIP sources, make sure you have the following requirements installed:\n- Python \u003e= 3.6.9\n- [OpenBabel](#Installing-OpenBabel) \u003e= 3.0.0 with [Python bindings](https://open-babel.readthedocs.io/en/latest/UseTheLibrary/PythonInstall.html)\n- PyMOL \u003e= 2.3.0 with Python bindings (optional, for visualization only)\n- ImageMagick \u003e= 7.0 (optional)\n\n**Python:** If you are on a system where Python 3 is executed using `python3` instead of just `python`, replace the `python` and `pip` commands in the following steps with `python3` and `pip3` accordingly.\n\n**OpenBabel:** Many users have trouble setting up OpenBabel with Python bindings correctly. We therefore provide some [installation help for OpenBabel](#Installing-OpenBabel) below.\n\n#### From Source\n\nOpen a terminal and clone this repository using\n```bash\n$ git clone https://github.com/pharmai/plip.git\n```\n\nEither set your `PYTHONPATH` environment variable to the root directory of your PLIP repository or run the following command in it\n\n```bash\n$ python setup.py install\n```\n\n#### Via PyPi\nWe deploy the PLIP package to [PyPi](https://pypi.org/project/plip/). You can install PLIP as Python module with:\n\n```bash\n$ pip install plip\n```\n\n**Note:** Be aware that you still have to install the above mentioned dependencies and link them correctly.\n\n### 2. Run PLIP\n\n#### Command Line Tool\n\nRun the `plipcmd.py` script inside the PLIP folder to detect, report, and visualize interactions. The following example creates a PYMOL visualization for the interactions between the inhibitor [NFT](https://www.rcsb.org/ligand/NFT) and its target protein in the PDB structure [1vsn](https://www.rcsb.org/structure/1VSN).\n\n**Note:** If you have installed PLIP with `python setup.py install` or PyPi, you will not have to set an alias for the `plip` command.\n\n```bash\n# Set an alias to make your life easier and create and enter /tmp/1vsn\n$ alias plip='python ~/plip/plip/plipcmd.py'\n$ mkdir /tmp/1vsn \u0026\u0026 cd /tmp/1vsn\n# Run PLIP for 1vsn and open the resulting visualization in PyMOL\n$ plip -i 1vsn -yv\n$ pymol 1VSN_NFT_A_283.pse\n```\n\n#### Python Module\nIn your terminal, add the PLIP repository to your `PYTHONPATH` variable. For our example, we also download a PDB file for testing.\n```bash\n$ export PYTHONPATH=~/plip:${PYTHONPATH}\n$ cd /tmp \u0026\u0026 wget http://files.rcsb.org/download/1EVE.pdb\n$ python\n```\nIn python, import the PLIP modules, load a PDB structure and run the analysis.\nThis small example shows how to print all numbers of residues involved in pi-stacking:\n\n```python\nfrom plip.structure.preparation import PDBComplex\n\nmy_mol = PDBComplex()\nmy_mol.load_pdb('/tmp/1EVE.pdb') # Load the PDB file into PLIP class\nprint(my_mol) # Shows name of structure and ligand binding sites\nmy_bsid = 'E20:A:2001' # Unique binding site identifier (HetID:Chain:Position)\nmy_mol.analyze()\nmy_interactions = my_mol.interaction_sets[my_bsid] # Contains all interaction data\n\n# Now print numbers of all residues taking part in pi-stacking\nprint([pistack.resnr for pistack in my_interactions.pistacking]) # Prints [84, 129]\n```\n\n### 3. Investigate the Results\nPLIP offers various output formats, ranging from renderes images and PyMOL session files to human-readable text files and XML files. By default, all files are deposited in the working directory unless and output path is provided. For a full documentation of running options and output formats, please refer to the [Documentation](DOCUMENTATION.md).\n\n## Versions and Branches\nFor production environments, you should use the latest tagged commit from the `master` branch or refer to the [Releases](https://github.com/pharmai/plip/releases) page. Newer commits from the `master` and `development` branch may contain new but untested and not documented features.\n\n## Contributors\n- Sebastian Salentin (original author) | [github.com/ssalentin](https://github.com/ssalentin)\n- Joachim Haupt | [github.com/vjhaupt](https://github.com/vjhaupt)\n- Melissa F. Adasme Mora |  [github.com/madasme](https://github.com/madasme)\n- Alexandre Mestiashvili | [github.com/mestia](https://github.com/mestia)\n- Christoph Leberecht  | [github.com/cleberecht](https://github.com/cleberecht)\n- Florian Kaiser  | [github.com/fkaiserbio](https://github.com/fkaiserbio)\n- Katja Linnemann | [github.com/kalinni](https://github.com/kalinni)\n\n## PLIP Web Server\nVisit our PLIP Web Server on [plip-tool.biotec.tu-dresden.de](https://plip-tool.biotec.tu-dresden.de).\n\n## License Information\nPLIP is published under the GNU GPLv2. For more information, please read the `LICENSE.txt` file.\nUsing PLIP in your commercial or non-commercial project is generally possible when giving a proper reference to this project and the publication in NAR.\n\n## Citation Information\nIf you are using PLIP in your work, please cite\n\u003e Adasme,M. et al. PLIP 2021: expanding the scope of the protein-ligand interaction profiler to DNA and RNA.\n\u003e Nucl. Acids Res. (05 May 2021), gkab294. doi: 10.1093/nar/gkab294\n\nor\n\n\u003e Salentin,S. et al. PLIP: fully automated protein-ligand interaction profiler.\n\u003e Nucl. Acids Res. (1 July 2015) 43 (W1): W443-W447. doi: 10.1093/nar/gkv315\n\n## FAQ\n\u003e I try to run PLIP, but I'm getting an error message saying:\n\u003e ValueError: [...] is not a recognised Open Babel descriptor type\n\u003e\nMake sure OpenBabel is correctly installed. This error can occur if the installed Python bindings don't match the OpenBabel version on your machine.\nWe don't offer technical support for installation of third-party packages but added some [installation help for OpenBabel](#Installing-OpenBabel) below.\nAlternatively you can refer to their [website](https://openbabel.org/docs/dev/Installation/install.html).\n\n\u003e I'm unsure on how to run PLIP and don't have much Linux experience.\n\u003e\nYou should consider running PLIP as Docker image, as we describe above.\n\n\u003e PLIP is reporting different interactions on several runs!\n\u003e\nDue to the non-deterministic nature on how hydrogen atoms can be added to the input structure, it cannot be guaranteed that each run returns exactly the same set of interactions. If you want to make sure to achieve consistent results, you can:\n\n- protonate the input structure once with PLIP or your tool of preference\n- run PLIP with `--nohydro`\n\n\u003e How does PLIP handle NMR structures?\n\u003e\nBy default PLIP uses the first model it sees in a PDB file. You can change this behavior with the flag `--model`.\n\n## Installing OpenBabel\nAs many users encounter problems with installing the required OpenBabel tools, we want to provide some help here. However, we cannot offer technical support. Comprehensive information about the installation of OpenBabel for Windows, Linux, and macOS can be found in the [OpenBabel wiki](http://openbabel.org/wiki/Category:Installation) and the [OpenBabel Docs](https://open-babel.readthedocs.io/en/latest/Installation/install.html).\nInformation about the installation of [OpenBabel Python bindings](https://open-babel.readthedocs.io/en/latest/UseTheLibrary/PythonInstall.html) can also be found there.\n\n### Using Conda, HomeBrew or the binary Windows Installer\n\nInstall OpenBabel using the [binary from GitHub](https://github.com/openbabel/openbabel/releases/latest) or with\n```bash\n# For Conda users\n$ conda install openbabel -c conda-forge\n# On macOS\n$ brew install open-babel\n```\nInstall the Python bindings with\n```bash\n$ pip install openbabel\n```\n**Note:** If you have trouble, make sure the OpenBabel version matches the one for the python bindings!\n\n### Using your Package Manager (Example for Ubuntu 20.04)\n\n```bash\n$ apt-get update \u0026\u0026 apt-get install -y \\\n    libopenbabel-dev \\\n    libopenbabel6 \\\n    python3-openbabel \\\n    openbabel\n```\n### From Source (Example for Ubuntu 18.04)\nClone the OpenBabel repository into the /src directory\n```bash\n$ git clone -b openbabel-3-0-0 \\\nhttps://github.com/openbabel/openbabel.git\n```\n\nWithin /src/openbabel create end enter a directory /build and configure the build using\n```bash\n$ cmake .. \\\n-DPYTHON_EXECUTABLE=/usr/bin/python3.6 \\\n-DPYTHON_BINDINGS=ON \\\n-DCMAKE_INSTALL_PREFIX=/usr/local \\\n-DRUN_SWIG=ON\n```\nFrom within the same directory (/src/openbabel/build) compile and install using\n```bash\n$ make -j$(nproc --all) install\n```\n## Contact / Maintainer\nAs of April 2020 PLIP is now officially maintained by [PharmAI GmbH](https://pharm.ai). Do you have feature requests, found a bug or want to use  PLIP in your project? Commercial support is available upon request.\n\n ![](https://www.pharm.ai/wp-content/uploads/2020/04/PharmAI_logo_color_no_slogan_500px.png)\n\n Please get in touch: `hello@pharm.ai`\n","funding_links":[],"categories":["药物-靶标 药物-药物 化合物-蛋白质 相互作用"],"sub_categories":["网络服务_其他"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpharmai%2Fplip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpharmai%2Fplip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpharmai%2Fplip/lists"}