pyssa

Python rich client for visual protein Sequence to Structure Analysis

https://github.com/urban233/pyssa

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 10 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.1%) to scientific vocabulary

Keywords

protein-structure-analysis protein-structure-prediction pymol python3
Last synced: 6 months ago · JSON representation

Repository

Python rich client for visual protein Sequence to Structure Analysis

Basic Info
Statistics
  • Stars: 18
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 6
Topics
protein-structure-analysis protein-structure-prediction pymol python3
Created over 3 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.md

PySSA

DOI License: GPL v3 Maintenance GitHub issues GitHub contributors GitHub release Software Article Preprint - ChemRxiv Software Article - JCIM Application Example - Use Cases Ruff

Python rich client for visual protein Sequence to Structure Analysis (PySSA)

Quick Installation

[!IMPORTANT] 📣 Update details for version 1.2.0 📣 Please reinstall PySSA if your current version is 1.2.0 or older! Version 1.2.0 introduces a user-only installation and therefore requires a complete reinstallation, i.e., uninstall and reinstall.

📣 Update details for version 1.1.0 📣 Due to persistent reliability issues with our previous cloud hosting provider (Sciebo), PySSA's automatic update detection feature has been temporarily disabled. You may have encountered unexpected errors during application launch as a result of this service disruption.

We sincerely apologize for any inconvenience caused by this necessary migration.

Use Cases

A "Use Case" refers to a specific scenario that demonstrates how the software can be used to accomplish a particular task or objective. There are three interconnected use cases that progressively demonstrate the capabilities of PySSA: the first use case illustrates how to use PySSA to validate the ColabFold prediction method, the second involves comparing the wild-type protein to a mutated protein to determine if the amino acids crucial for receptor interaction remain in the same position, and the third showcases how to generate a high-quality, ray-traced image of a specific amino acid.

Contents of this document

Description

PySSA ('Python rich client for visual protein Sequence to Structure Analysis') is an open software project that aims to combine PyMOL(TM) and ColabFold to enable the prediction and analysis of 3D protein structures for the scientific end-user. PySSA allows the creation of managed and shareable projects with defined workflows for the prediction and analysis of protein structures, which can be conveniently carried out by scientists without any special computer skills or programming knowledge on their local computers. PySSA can help make protein structure prediction accessible for research and development in protein chemistry and molecular biology, and for teaching.
In addition to the prediction and analysis capabilities, PySSA has a more user-friendly interface for interacting with PyMOL, such as creating high-quality ray-tracing images in a few clicks. <!-- The scientific article describing PySSA can be found here: Title -->

Contents of this repository

Sources

There are five different Python packages that contain functionality for specific aspects of the architecture.

  • pyssa
    • The package contains Python modules, Qt .ui files and cascading stylesheets.
  • applicationprocess_
    • The package contains a Python module for the ApplicationProcessManager class.
  • auxiliarypymol_
    • The package contains Python modules for the communication and integration of Auxiliary PyMOL.
  • pyssacolabfold_
    • The package contains a modified version of the batch.py module of the ColabFold library. Moreover, the package contains the colabfold_run.py and the service.py module for managing the ColabFold microservice.
  • pyssapymol_
    • The package contains Python modules for the communication and integration of User PyMOL.

Documentation

The "docs" folder contains the end-user documentation in the form of markdown and HTML files. The subfolder "dev-notes", contains development notes.

Use cases describing specific workflows can be found here.

Assets

The "assets" folder consists of the subfolder "images" which contains the PySSA logo. If you are using PySSA for your own projects, you are welcome to give credit to PySSA by using the logo in your presentations, etc.

Installation

PySSA is tested and available for Windows(TM) 10 and 11.

Microsoft Windows

For a convenient and user-friendly installation, a setup is available.

Important: * WSL2 cannot be uninstalled, once it is installed! Windows will integrate the WSL2 as a system component. * Be aware that the computer needs to be restarted after installing WSL2.

A step-by-step guide can be found here.

Source code

This is a Python project based on Python's virtual environment module. To modify the source code, download or clone the repository and open it in an IDE that supports virtual environments (e.g. JetBrains PyCharm). Finally, run pip install -r requirements.txt to set up the virtual environment used for development.

To build the inno setup for the Microsoft Windows deployment, run shell automator.bat build inno_setup This will include the WSL2 distribution that gets downloaded during the build process. The project supports using a setup.py file to create a package that works with the PySSA Component Installer.

If you want to create only a setup without the entire WSL2 distro run: shell automator.bat update_inno_setup instead.

To build the end-user documentation, run: shell automator.bat make docs This is only necessary for developers who wish to extend the documentation. End-users should always consult the built-in documentation by clicking on the question mark icon in the bottom left.

Dependencies

Managed by PySSA-Installer: * Windows Subsystem for Linux 2 * WSL2 * License: Microsoft Software License Terms * Colabfold * LocalColabfold * License: MIT License * PyQt5 * License: GNU General Public License (GPL) * cx_Freeze * License: Derived from the Python Software Foundation License * NumPy * License: BSD 3-Clause "New" or "Revised" License * Pandas * License: BSD 3-Clause "New" or "Revised" License * Matplotlib * License: Python Software Foundation License (PSF) * Biopython * License: BSD 3-Clause License * PyMOL Open-Source * License: BSD-like license * SQLite3 * License: Public Domain

Architecture

Use cases

Three distinct use cases are presented to illustrate the functionality of PySSA. Each use case builds upon the preceding one, and it is therefore recommended to view all three in order to gain a comprehensive understanding of the software's capabilities.

The use cases can be found under this wiki page: Use Cases

Citation

You can cite this software or this repository as it is defined in the CITATION.cff file.

References and useful links

ColabFold * ColabFold GitHub repository * Localcolabfold GitHub repository * Mirdita, M., Schütze, K., Moriwaki, Y. et al. ColabFold: making protein folding accessible to all. Nat Methods 19, 679–682 (2022). https://doi.org/10.1038/s41592-022-01488-1

PyMOL * Open-source GitHub repository * Unofficial PyMOL(TM) Python wheel files * Unofficial PyMOL(TM) Setup

Acknowledgements

Developers: * Martin Urban * Hannah Kullik

End-user testers * Jonas Schaub * Achim Zielesny

Logo: * Martin Urban * Hannah Kullik

Initialization, conceptualization, and supervision: * Achim Zielesny and Angelika Loidl-Stahlhofen

The PySSA project team would like to thank the communities behind the open software libraries and especially Warren L. DeLano for their amazing work.

<!-- PySSA was developed at:

Zielesny Research Group
Westphalian University of Applied Sciences
August-Schmidt-Ring 10
D-45665 Recklinghausen Germany --!>

Owner

  • Name: Martin Urban
  • Login: urban233
  • Kind: user

GitHub Events

Total
  • Create event: 3
  • Issues event: 3
  • Release event: 2
  • Watch event: 4
  • Push event: 30
  • Pull request review event: 1
  • Pull request event: 2
Last Year
  • Create event: 3
  • Issues event: 3
  • Release event: 2
  • Watch event: 4
  • Push event: 30
  • Pull request review event: 1
  • Pull request event: 2

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 11
  • Total pull requests: 1
  • Average time to close issues: 4 days
  • Average time to close pull requests: 41 minutes
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 0.55
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 11
  • Pull requests: 1
  • Average time to close issues: 4 days
  • Average time to close pull requests: 41 minutes
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.55
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • JonasSchaub (12)
Pull Request Authors
  • urban233 (2)
Top Labels
Issue Labels
documentation (1)
Pull Request Labels
enhancement (2)

Dependencies

config/localcolabfold/Dockerfile docker
  • ubuntu 22.04 build
pyproject.toml pypi
requirements.txt pypi
requirements_dev.txt pypi
setup.py pypi