CBMPy Metadraft: a flexible and extensible genome-scale model reconstruction tool

Overview

cbmpy-metadraft

CBMPy Metadraft: a flexible and extensible, GUI-based genome-scale model reconstruction tool that supports multiple Systems Biology standards.

New: upgrading to MetaDraft version 0.9.2

MetaDraft version 0.9.2 now defaults to the 2019-1 template library, if you are working directly in a cloned repository please initialise the new template library:

cd cbmpy-metadraft
git submodule update --init --remote -- modeldb/2019-1/

If you want to switch back to the 2018-1 library and results please edit the _metadraft.cfg file and change the value of the "metadraft_db_version" key to "2018-1" (it is currently set to "2019-1").

Installation and system dependencies

NEW: The MetaDraft User Guide is now available online and for download from the MetaDraft website.

System dependencies

MetaDraft requires working versions of Python, Perl, Java and NCBI Blast2. Once you have downloaded MetaDraft and it's Python dependencies, please run the system test script to that can be found in the MetaDraft directory python systemtest.py.

Typically the default Java runtime (JRE) installed on your system is all that is require, for Windows this can be obtained from [https://www.java.com/]. On Linux please use your favourite package manager, for example, when using Ubuntu/Debian based oeprating systems, try sudo apt-get install default-jre.

MetaDraft has been successfully tested using Windows 10, Ubuntu Linux 16.04/18.04, Python 2.7, Python 3.6, PyQt4 and PyQt5. MetaDraft is developed on Windows Anaconda Python 2.7 with PyQt5.

Getting MetaDraft

To install the latest version of MetaDraft, download from GitHub ([https://github.com/SystemsBioinformatics/cbmpy-metadraft]) or directly clone a repository (requires git to be installed).

Clone the cbmpy-metadraft git repository:

git clone https://github.com/SystemsBioinformatics/cbmpy-metadraft.git

Getting and installing the MetaDraft template library

MetaDraft ships with a single model template, if you have cloned the repository you can activate the current template set, based on the BiGG2 repository, change into the MetaDraft directory and activate the template submodule:

cd cbmpy-metadraft
git submodule update --init --remote -- modeldb/2019-1/

If you have downloaded master repository as a zip file or as a release, download the template-models-2018-1.zip template archive provided with the latest release. Unzip this archive into the metadraft/modeldb directory.

MetaDraft is archived on Zenodo, please see CITATION.cff for more details DOI

Creating a custom Anaconda Python environment

You have now downloaded the latest version of MetaDraft, next please run the system test script python systemtest.py to check your installation and then proceed to install the required Python dependencies. How you do this will depend on whether you use Conda or PIP.

The following commands will create custom virtual environments with all the Python dependencies needed to run MetaDraft. It is also possible to install the individual packages using "conda" or "pip" see the requirements.txt file for details of the required packages (see "pip" instructions below).

Setting up a Python 3 CONDA environment (recommended)

Creating the environment, this should work on all operating systems. Open a terminal and type:

conda env create -f environment.yml
conda activate metadraft3

One Windows run the system test (optional) and start MetaDraft:

runwin.bat

One Linux run the system test (optional) and start MetaDraft:

sh ./run.sh

Adding the the core packages (minimal) to an existing CONDA environment:

conda install -c bgoli -c conda-forge pyqt5-sip pyqt python-libsbml xlrd xlwt cbmpy biopython

Using PyPI to install Python dependencies

For Python 3

Using PyPI it is only possible to use Python 3. You can install the packages useing the requirements.txt file (recommended):

pip install -r requirements.txt

Software citation

Please cite this software if you use it (the author(s) enthusiasm to carry on maintaining this project depend on it), see CITATION.cff for more details.

 Brett G. Olivier. (2019, October 8).
 SystemsBioinformatics/cbmpy-metadraft: Metadraft.
 Zenodo. http://doi.org/10.5281/zenodo.2398336

(C) Brett G. Olivier ([email protected]), Vrije Universiteit Amsterdam, Amsterdam, July 2020. Licence CC-BY 4.0

Comments
  • Python stops the program when building a template or  converting a SBML file

    Python stops the program when building a template or converting a SBML file

    [Hello!] L casei 12A.zip

    I'm new at MetaDraft. I was trying to build my own template by: 1-convert my SBML level 2 to level 3 FBC v3 2-create a template with a Genbank file + my converted SBML file.

    In both of these steps anaconda finds an "Unhandled Python exception" and shuts down MetaDraft. I'm using the anaconda prompt with python v3.8.5. Interestingly, after step 1 I did receive a converted SBML and after step 2 (using the converted SBML from step 1) I received a .xlsx file. However my template is not shown in the "select the target network(s)" window.

    Any idea how to solve this? Best,

    1st update:the same problem happens with other files. 2nd update: I tried using python 3.6. I then managed to upgrade the sbml version and to build templates, but didn't manage to create metaproteome, python shutted down again. I tried installing python 2.7 and cbmpy 0.7.5 (that only needs biopython 1.7.6., more recent versions would require a more updated python) but then libsbml was missing. I could only install libsbml with "pip install python-libsbml-experimental" .

    Now the error is that no QtGui is defined, which I solved by installing PyQT4. However then there is a conflict with PyQT5, which makes me think that the QtGui was not missing. Any ideas how to proceed?

    opened by PolTorrentTornos 8
  • Issue with PyQt for python 2.7

    Issue with PyQt for python 2.7

    Hi,

    While trying to run metadraft.py after okay from systemtest.py i got the message: '2' after showing the icon, this was while running on python 2.7 using PyQt4. I did update to PyQt5, however I then got an error message showing that no module named sip was available, this module dropped support for python versions below v3.5 as stated on their website.

    Kind regards, Bas

    Edit: i also get the 2 using python 3.5

    good first issue 
    opened by Bas4694 6
  • Use of Trypanosoma gbff

    Use of Trypanosoma gbff

    Hi!

    I'm trying to build a template model using Trypanosoma cruzi. However, I'm gettin an error:
    NITDB: connecting geneDB INITDB: connecting notesDB [('iIS312', 'iIS312.gbff', 'iIS312.xml')] /media/alexranieri/Data/Trypanosoma/metadraft/Tbrucei/reference_model /media/alexranieri/Data/Trypanosoma/metadraft/Tbrucei/reference_model Processing: iIS312 iIS312.gbff iIS312.xml INITDB: connecting geneDB INFO: addGeneInformationToDB committed 0 new records FBC version: 2 M.getNumReactions: 519 M.getNumSpecies: 606 FBC.getNumObjectives: 1 FBC.getNumParameters: 3 FBC.getNumGeneProducts: 312 Zero dimension compartment detected: c Zero dimension compartment detected: e Zero dimension compartment detected: x Zero dimension compartment detected: m Zero dimension compartment detected: n Zero dimension compartment detected: r FluxBounds process1: 0.01 INFO: Active objective: obj Adding objective: obj FluxBounds process2: 0.01

    SBML3 load time: 0.57

    CheckModelLocusTags is processing: /media/alexranieri/Data/Trypanosoma/metadraft/Tbrucei/reference_model/iIS312.gbff INFO: Multiple sequences encountered in file: /media/alexranieri/Data/Trypanosoma/metadraft/Tbrucei/reference_model/iIS312.gbff Traceback (most recent call last): File "/home/alexranieri/metadraft/cbmpy-metadraft/libpython/qtmetadraft.py", line 1615, in bp_createSeqPlusProcess compress_output=self.CREATE_TEMPLATE_ZIP) File "/home/alexranieri/metadraft/cbmpy-metadraft/libpython/biotools.py", line 946, in createSeqplusModel ) = checkModelLocusTags(fmod, fgb) File "/home/alexranieri/metadraft/cbmpy-metadraft/libpython/biotools.py", line 215, in checkModelLocusTags 'isDescribedBy', 'PubMed', r_.pubmed_id File "/home/alexranieri/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBModel.py", line 771, in addMIRIAMannotation self.miriam.addMIRIAMannotation(qual, entity, mid) File "/home/alexranieri/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBDataStruct.py", line 380, in addMIRIAMannotation if self.checkId(E, mid): File "/home/alexranieri/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBDataStruct.py", line 333, in checkId if self.checkEntityPattern(entity): File "/home/alexranieri/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBDataStruct.py", line 316, in checkEntityPattern if type(self.MIRIAM[entity]['pattern']) == re._pattern_type: AttributeError: module 're' has no attribute '_pattern_type' Aborted (core dumped)

    The model I'm using is: http://bigg.ucsd.edu/models/iIS312 And its genbank: https://sra-download.ncbi.nlm.nih.gov/traces/wgs03/wgs_aux/AY/LP/AYLP01/AYLP01.1.gbff.gz

    Is it a problem in the model, genbank or both?

    opened by alexranieri 2
  • Upgrade complex GPR handling

    Upgrade complex GPR handling

    I need to look into how complex GPR's are added, also add GPR string as annotation for comparison. Comparative testing using set 3 should get most patterns

    bug 
    opened by bgoli 0
  • Instalation OK, system test OK, run cannot find sip although it is installed

    Instalation OK, system test OK, run cannot find sip although it is installed

    Hello,

    I'm trying to install and run MetaDraft, I've run the following commands:

    $ conda env create -f environment.yml (for installation)

    $ conda activate metadraft3

    (metadraft3) $ python systemtest.py

    Which gives me:

    System check results:

    Java test passed: True Perl test passed: True Perl XML test passed: True BLAST test passed: True Python dependency test passed: True

    Congratulations you are ready to run MetaDraft! (python metadraft.py)

    However, when I run:

    (metadraft3) $ sh ./run.sh

    I get the following error:

    Traceback (most recent call last): File "metadraft.py", line 62, in import libpython.qtmetadraft File "/scr/k61san/natasha/matomic/metadraft/cbmpy-metadraft-0.9.5/libpython/qtmetadraft.py", line 40, in import sip ModuleNotFoundError: No module named 'sip'

    Even though sip is installed

    (metadraft3) $ pip install sip

    Requirement already satisfied: sip in /homes/brauerei/natasha/miniconda3/envs/metadraft3/lib/python3.8/site-packages (6.5.1) Requirement already satisfied: setuptools in /homes/brauerei/natasha/miniconda3/envs/metadraft3/lib/python3.8/site-packages (from sip) (60.9.3) Requirement already satisfied: toml in /homes/brauerei/natasha/miniconda3/envs/metadraft3/lib/python3.8/site-packages (from sip) (0.10.2) Requirement already satisfied: packaging in /homes/brauerei/natasha/miniconda3/envs/metadraft3/lib/python3.8/site-packages (from sip) (21.3) Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /homes/brauerei/natasha/miniconda3/envs/metadraft3/lib/python3.8/site-packages (from packaging->sip) (3.0.7)

    Please, can you help me? What can I do to run metadraft ?

    Thanks in advance

    opened by NatashaJorge 6
  • Installation instruction of required Blast modules are missing in the README

    Installation instruction of required Blast modules are missing in the README

    When one follows the installation instructions of the README and tries to run a BLAST, one can end up with messages like this:

    
    Starting first BLAST pass for IN - IN on 05/09/2021sh: 1: blastall: not found
    
    no element found at line 1, column 0, byte -1 at ./blast_parser.pl line 110.
    
    Starting second BLAST pass for IN - IN on 
    Starting first BLAST pass for IN - DB on 05/09/202105/09/2021sh: 1: blastall: not found
    
    no element found at line 1, column 0, byte -1 at ./blast_parser.pl line 110.
    
    Starting second BLAST pass for IN - DB on 
    Starting first BLAST pass for DB - IN on 05/09/202105/09/2021sh: 1: blastall: not found
    
    no element found at line 1, column 0, byte -1 at ./blast_parser.pl line 110.
    
    Starting second BLAST pass for DB - IN on 
    Starting first BLAST pass for DB - DB on 05/09/202105/09/2021sh: 1: blastall: not found
    
    no element found at line 1, column 0, byte -1 at ./blast_parser.pl line 110.
    
    

    On a Linux system, one can easily solve it by installing the missing modules like this:

    sudo apt-get install ncbi-blast+-legacy

    Might be good to add it to the README (in case I overlooked it somewhere, my apologies for the noise).

    opened by willigott 3
  • Can one surpress the output

    Can one surpress the output "Building a new database, current time..."

    I am using the genbank file from here and blast it against the Bigg1 version of Hpylori (just for testing purposes).

    I built the metaproteome and then click BLAST. I then get the expected output in the terminal:

    2
    4278 sequences in file IN
    335 sequences in file DB
    Trying to run BLAST now - this may take several hours ... or days in worst case!
    Formatting BLAST databases
    
    
    Building a new DB, current time: 05/09/2021 13:45:56
    New DB name:   /stuff/cbmpy-metadraft/data_blast/1620560756/IN
    New DB title:  IN
    Sequence type: Protein
    Keep MBits: T
    Maximum file size: 1000000000B
    Adding sequences from FASTA; added 4278 sequences in 0.0583789 seconds.
    
    
    Building a new DB, current time: 05/09/2021 13:45:56
    New DB name:   /stuff/cbmpy-metadraft/data_blast/1620560756/DB
    New DB title:  DB
    Sequence type: Protein
    Keep MBits: T
    Maximum file size: 1000000000B
    Adding sequences from FASTA; added 335 sequences in 0.0046699 seconds.
    Done formatting
    Starting BLAST searches...
    
    Starting first BLAST pass for IN - IN on 05/09/2021Warning: [blastp] The parameter -num_descriptions is ignored for output formats > 4 . Use -max_target_seqs to control output
    
    Starting second BLAST pass for IN - IN on 05/09/2021
    
    Building a new DB, current time: 05/09/2021 13:47:10
    New DB name:   /stuff/cbmpy-metadraft/data_blast/1620560756/tmpd
    New DB title:  ./tmpd
    Sequence type: Protein
    Keep MBits: T
    Maximum file size: 1000000000B
    Adding sequences from FASTA; added 4 sequences in 0.000277996 seconds.
    Warning: [blastp] The parameter -num_descriptions is ignored for output formats > 4 . Use -max_target_seqs to control output
    
    
    Building a new DB, current time: 05/09/2021 13:47:10
    New DB name:   /stuff/cbmpy-metadraft/data_blast/1620560756/tmpd
    New DB title:  ./tmpd
    Sequence type: Protein
    Deleted existing Protein BLAST database named /stuff/cbmpy-metadraft/data_blast/1620560756/tmpd
    Keep MBits: T
    Maximum file size: 1000000000B
    Adding sequences from FASTA; added 5 sequences in 0.000389099 seconds.
    Warning: [blastp] The parameter -num_descriptions is ignored for output formats > 4 . Use -max_target_seqs to control output
    
    

    I get a lot of the messages as shown here starting from the second Blast; is there a way to not show these but only the "important" ones like "Starting second BLAST pass for IN - IN on 05/09/2021" and then - once finished

    Output saved to file Output.IN-DB
    HTML output saved to orthologs.IN-DB.html
    Table output saved to table.IN-DB
    mysql output saved to sqltable.IN-DB
    

    The messages inbetween make it hard to follow in which round of blasting metadraft is currently.

    Thanks!

    opened by willigott 0
  • IndexError: list out of range due to Sympy version

    IndexError: list out of range due to Sympy version

    I just installed Metadraft following the instructions in the README (on Ubuntu).

    When I execute

    sh ./run.sh

    I receive

    Using Qt5 - the next generation
    You are using BioPython 1.78
    Traceback (most recent call last):
      File "metadraft.py", line 62, in <module>
        import libpython.qtmetadraft
      File "/stuff/cbmpy-metadraft/libpython/qtmetadraft.py", line 169, in <module>
        from . import biotools
      File "/stuff/cbmpy-metadraft/libpython/biotools.py", line 61, in <module>
        import cbmpy
      File "/stuff/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/__init__.py", line 48, in <module>
        from . import CBSolver
      File "/stuff/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBSolver.py", line 40, in <module>
        from . import CBGLPK
      File "/stuff/anaconda3/envs/metadraft3/lib/python3.7/site-packages/cbmpy/CBGLPK.py", line 38, in <module>
        and int(sympy.__version__.split('.')[2]) >= 4
    IndexError: list index out of range
    

    Reason is that Sympy 1.8 gets installed, therefore int(sympy.__version__.split('.')[2] is undefined.

    A quick fix is to just run

    conda install sympy=1.7.1

    but I guess ideally it can be solved on code level.

    opened by willigott 0
Releases(v0.9.5)
  • v0.9.5(Nov 25, 2020)

    This is the latest release of MetaDraft, a GUI-based, full featured tool for the reconstruction of genome-scale metabolic networks.

    Please visit the MetaDraft webpage for more details on using MetaDraft as well as additional resources. The readme file has detailed instructions on installing and configuring MetaDraft and its dependencies.

    To use MetaDraft, download the source code (*.zip or *.tar.gz) and unpack it. If you want the full template library, which is highly recommended, you should download the library archive (template-models-2019-1.zip) and extract it into the modeldb subdirectory of the MetaDraft root directory.

    After extraction, when MetaDraft loads it should display 2019-1 in the title bar. This release also adds improved handling of GPR associations which are completely resolved, improved SBML Level 3 FBC V2 output and all template model objective functions are now included as alternative objective functions in the reconstruction.

    If upgrading from a previous release please make sure to update your CBMPy version to at least 0.7.25 (available on PyPI and Anaconda cloud) or 0.8.0 for Python 3.7 or newer.

    MetaDraft also exports COMBINE archives which contain the model in both SBML FBCv2 and Excel formats as well as complete HTML pages containing the model makeup and description of each model component.

    This version of MetaDraft has been featured in a recently published comparison of reconstruction tools by Mendoza and colleagues

    The MetaDraft Team

    Source code(tar.gz)
    Source code(zip)
    template-models-2019-1.zip(117.97 MB)
  • v0.9.2(Aug 8, 2019)

    This is the latest release of MetaDraft, a GUI-based, full featured tool for the reconstruction of genome-scale metabolic networks.

    Please visit the MetaDraft webpage for more details on using MetaDraft as well as additional resources. The readme file has detailed instructions on installing and configuring MetaDraft and its dependencies.

    To use MetaDraft, download the source code (*.zip or *.tar.gz) and unpack it. If you want the full template library, which is highly recommended, you should download the library archive (template-models-2019-1.zip) and extract it into the modeldb subdirectory of the MetaDraft root directory.

    After extraction, when MetaDraft loads it should display 2019-1 in the title bar. This release also adds improved handling of GPR associations which are completely resolved, improved SBML Level 3 FBC V2 output and all template model objective functions are now included as alternative objective functions in the reconstruction.

    If upgrading from a previous release please make sure to update your CBMPy version to at least 0.7.25 (available on PyPI and Anaconda cloud).

    MetaDraft also exports COMBINE archives which contain the model in both SBML FBCv2 and Excel formats as well as complete HTML pages containing the model makeup and description of each model component.

    This version of MetaDraft has been featured in a recently published comparison of reconstruction tools by Mendoza and colleagues

    The MetaDraft Team

    Source code(tar.gz)
    Source code(zip)
    template-models-2019-1.zip(117.97 MB)
  • v0.9.0-rc.1(Dec 18, 2018)

    This is the initial release of MetaDraft a user-friendly tool for genome-scale network reconstruction. Please visit the MetaDraft webpage for more details on using MetaDraft. The readme file has detailed instructions on installing and configuring MetaDraft and its dependencies.

    To use MetaDraft, download the source code (*.zip or *.tar.gz) and unpack it. If you want the full template library (recommended) you should download the library archive (template-models-2018-1.zip) and extract it into the modeldb subdirectory of the MetaDraft root directory.

    The MetaDraft Team

    Source code(tar.gz)
    Source code(zip)
    template-models-2018-1.zip(112.90 MB)
  • v0.9.0-beta(Nov 23, 2018)

    This is a test release of MetaDraft a user-friendly tool for genome-scale network reconstruction. Please visit the MetaDraft webpage for more details.

    To use MetaDraft, download the source code (*.zip or *.tar.gz) and unpack it. If you want the full template library (recommended) you should download the library archive (2018-1.zip) and extract it into the modeldb directory that can be found in the MetaDraft directory.

    Source code(tar.gz)
    Source code(zip)
    template-models-2018-1.zip(112.91 MB)
Owner
Systems Biology Lab, Vrije Universiteit Amsterdam
This is the code repository of the Systems Biology Lab. Our lab studies the molecular networks inside cells that give rise to cell behavior and fitness.
Systems Biology Lab, Vrije Universiteit Amsterdam
All you need to learn Tkinter!

Tkinter This repository contains the codes and resources which I used to learn the standard GUI library of Python, Tkinter! Best Tkinter Resources Vid

Samyak Jain 3 May 02, 2022
Signin/Signup GUI form using tkinter in python

SignIn-SignUpFormRepo Hello there, I am Shahid and this is the Signin/Signup GUI form using tkinter in python if you want to use avatar images then pa

Shahid Akhtar 1 Nov 09, 2021
Windows & Linux GUI application to use a Satodime (satodime.io)

Satodime-Tool Licence: LGPL v3 Author: Toporin Language: Python (= 3.6) Homepage: https://github.com/Toporin/Satodime-Tool Introduction What is Satod

4 Dec 16, 2022
An qt asset browser for applications like houdini/nuke/maya/blender

AssetBrowser A qt asset browser for applications like houdini/nuke/maya/blender Currently in development Note: Only houdini plugin available during de

Jonas Sorgenfrei 6 Aug 05, 2022
Mini is a web browser application based on the Python PyQt web engine, made in 290 lines of code.

Mini Mini is a web browser application based on the Python PyQt web engine, made in 290 lines of code. The code is written and published as is, so the

Dmitry Karpenko 6 Nov 07, 2022
Python script with tkinter that allows you to open a local chat room

Server_chat Python script with tkinter that allows you to open a local chat room To begn you'll have to start the server side script and run it. You w

2 Feb 11, 2022
MediaPlayer-with-PyQt5 - The Multimedia Player with Python and PyQt5

MediaPlayer-with-PyQt5 I made this Multimedia Player with Python and PyQt5, I re

4 Oct 06, 2022
A Minimalistic Backup GUI for your Windows, Mac or Linux

BlobBackup is a minimalistic backup utility for your Windows, Mac or Linux computer. With an excellent engine, extensive storage support, and an easy

Bimba Shrestha 283 Nov 30, 2022
A desktop application developed in Python with PyQt5 to predict demand and help monitor and schedule brewing processes for Barnaby's Brewhouse.

brewhouse-management A desktop application developed in Python with PyQt5 to predict demand and help monitor and schedule brewing processes for Barnab

Isaac Cheng 2 Jul 09, 2022
Basic calculator using Tkinter GUI

Basic calculator using Tkinter GUI

Rogerio Penchel 17 Jan 09, 2022
The quick and easy way to add versatile graphical interfaces with networking capabilities to your Python programs.

The quick and easy way to add versatile graphical interfaces with networking capabilities to your Python programs. Give instant access to your application to whoever you want on the Internet, without

Claude SIMON 215 Dec 28, 2022
Function-Plotter - GUI Python program that plots functions that are entered by the user

FunctionPlotter GUI Python program that plots functions that are entered by the user. The program takes minimum and maximum value for x and plot it as

Mohamed Magdy 2 Jan 20, 2022
LyricsGenerator - A simple GUI made using Python(Tkinter) for generating song lyrics

Lyrics Generator Reference :- https://www.geeksforgeeks.org/create-a-gui-to-extr

Somya Ranjan Sahu 3 Mar 25, 2022
A lightweight file-copying interface.

autosort A lightweight file-copying interface. Preview What is autosort? Autosort is a lightweight file-copying interface. It allows you to copy sever

32 Jan 02, 2023
Missing widgets and components for Qt-python

superqt! "missing" widgets and components for PyQt/PySide This repository aims to provide high-quality community-contributed Qt widgets and components

napari 0 Nov 11, 2022
GUI for Volatility forensics tool written in PyQT5

Volatility GUI This is a GUI for Volatility forensics tool written in PyQT5 Prerequisites: 1- Installed version of Volatility. 2- Install PyQT5. sudo

Hamza Megahed 52 Jun 18, 2022
Bill Cipher is a Python3 Tkinter Application that creates Python remote backdoors, while giving you the option to convert it to an exe.

Bill Cipher is a Python3 Tkinter Application that creates Python remote backdoors, while giving you the option to convert it to an exe. The program also configures a .py server file that works with t

Damian Mostert 2 Apr 12, 2022
PyQt QGraphicsView with selection box. User can move vertical border of the box horizontally.

pyqt-horizontal-selection-square-graphics-view PyQt QGraphicsView with selection box. User can move vertical border of the box horizontally. Requireme

Jung Gyu Yoon 3 Nov 07, 2022
Key Cast - Cast your key presses and mouse clicks on the screen, while casting your favorite application on the screen. Better than the rest.

Key Cast Screen cast your keyboard and mouse clicks in style Project Homepage » View Demo · Report Bug · Request Feature Table of Contents Introductio

Mehul Singh Teya 13 Dec 23, 2022
ROS2 + PyQt5 Example

ROS2 + PyQt5 Example

Ar-Ray 4 Nov 15, 2022