Skip to content
/ PySSA Public

Python rich client for visual protein Sequence to Structure Analysis

License

Notifications You must be signed in to change notification settings

urban233/PySSA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PySSA

License: GPL v3 Maintenance GitHub issues GitHub contributors GitHub release

linting: pylint

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

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 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.

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.
  • application_process
    • The package contains a Python module for the ApplicationProcessManager class.
  • auxiliary_pymol
    • The package contains Python modules for the communication and integration of Auxiliary PyMOL.
  • pyssa_colabfold
    • 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.
  • pyssa_pymol
    • 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 (Available soon).

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 10 and 11.

Windows

For a convenient and user-friendly installation, the "PySSA Component Installer" is available (click here to automatically download the setup.exe of the latest version). Download the installer executable, start, and follow the instructions to install the PySSA-Installer. After that, open the installer and install each component (WSL2, ColabFold and PySSA) one after the other. To start PySSA, double-click the created shortcut on the desktop. To uninstall PySSA, open the PySSA-Installer and uninstall the components which should get removed.

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 stable internet connection is required (if this is not available use the offline setup, see below).

To install PySSA in an offline environment the offline setup needs to be downloaded (available here). This setup contains the PySSA Component Installer together with all necessary files that are needed for installing ColabFold and PySSA without an internet connection. The offline setup is distributed as a zip archive. Therefore, it must be extracted to run the setup. The WSL2 needs to be setup beforehand.
To update ColabFold or PySSA it is necessary to download a new offline setup.

The PySSA Component Installer user guide is available in the installer's menu under Help. If WSL2 or ColabFold installation fails, consult the user guide and read the troubleshooting section.

Source code

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

The project supports using a setup.py file to create a package that works with the PySSA Component Installer. To build the package run python setup.py create_win_package.

The setup.py also supports building the documentation using the command: python setup.py make_docs.

Dependencies

Managed by PySSA-Installer:

Architecture

Citation

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

References and useful links

ColabFold

PyMOL

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.