Skip to content
Genscale Team edited this page Jun 9, 2017 · 15 revisions

Presentation

pyGATB is a Python3 wrapper for the GATB-Core library.

The current release of pyGATB gives access to the following GATB-Core components:

  • Bank: the class that enables to load a Fasta or a Fastaq file
  • Graph: the class that holds the De Bruijn graph
  • Node: the class that makes graph's nodes

Learn more.

Requirements and installation

Actually, pyGATB requirements depend upon the way you use the wrapper:

  • You can execute pyGATB Python scripts using a Docker container
  • You could also install pyGATB pre-compiled Python3 library
  • Finally, you may want to compile pyGATB code on your system

Each solution has its pros and cons. Let's have a review of that.

Use pyGATB with Docker

Using the Docker option is quite easy.

  • Pros:
    • it only requires you have Docker installed on your system
      you do not even need to have Python3 installed.
  • Cons:
    • Docker has to be installed
    • you have limited access to the full power of your computer (e.g. cores usage)

It is a perfect solution if you just want to make a try of pyGATB.

Read more.

Use pyGATB Python3 package

If you want to get a bit further in taking advantage of your computer resources, you can install a pre-compiled pyGATB package.

  • Pros: pyGATB is simply installed using Python3 standard installation package
  • Cons:
    • Python3 has to be installed
    • pyGATB package requires recent libc++

Read more.

Use pyGATB from its source code

Finally, the most extended way of using pyGATB relies on making an installation from the source code.

  • Pros: benefit from a precise use of the full architecture of YOUR computer.
  • Cons: you have to install the pyGATB compiling stack

Read more.

GATB-Core to Python: How does it work?

You can read this article to understand how Cython is used to provide native GATB-Core c++ APIs to the Python programming language.