Skip to main content

No project description provided

Project description

[logo]

Caravagene (full documentation here) is a Python library to plot schemas of DNA constructs from a list of parts:

from caravagene import Part, Construct, ConstructList

constructs = ConstructList([Construct([
    Part('promoter', label='my promoter'),
    Part('CDS', label='gene with a very very long name'),
    Part('terminator', label='PolyA'),
    Part('insulator', label='I1')
])])

constructs.to_image('construct.jpeg')
[logo]

Here is another example producing this PDF showing multiple constructs:

from caravagene import Part, Construct, ConstructList

my_constructs = ConstructList(
    title="My constructs",
    constructs=[
        Construct(name="ASM1", parts=[
            Part('HA1', category='homology-arm'),
            Part('rc1', category='recombinase-recognition-sequence'),
            Part('my promoter', category='promoter'),
            Part('RNA stability', category='rna-stability-sequence'),
            Part('<i>acs</i>', category='CDS'),
            Part('PolyA', category='terminator'),
            Part('I1', category='insulator'),
        ]),
        Construct(name="ASM2", parts=[
            Part('my promoter', category='promoter'),
            Part('gene with a very very long name', category='CDS'),
            Part('PolyA', category='terminator'),
            Part('I1', category='insulator')
        ])
    ]
)
my_constructs.to_pdf('multiconstruct.pdf')
[logo]

Note that ConstructsList can be supplied with a fontthat it is also possible to extend Caravagene to support other categories/symbols, as follows:

from caravagene import SYMBOL_FILES
SYMBOL_FILES['my-new-category'] = 'path/to/some/symbol.svg'

Finally, here is an example using an Excel spreadsheet:

Spreadsheet:

[logo]

Python code:

from caravagene import ConstructList
my_constructs = ConstructList("my_spreadsheet.xlsx")
my_constructs.to_pdf('my_schemas.pdf')

or command-line (one-time use):

caravagene my_spreadsheet.xlsx my_schemas.pdf

or command-line (re-render when the spreadsheet changes on disk):

caravagene my_spreadsheet.xlsx my_schemas.pdf --watch

Output:

[logo]

Installation

Caravagene requires WkHTMLtoPDF to be installed. On Ubuntu, install it with

(sudo) apt-get install wkhtmltopdf

You can install caravagene through PIP

sudo pip install caravagene

Alternatively, you can unzip the sources in a folder and type

sudo python setup.py install

Licence

Caravagene is an open-source software originally written at the Edinburgh Genome Foundry by Zulko and released on Github under the MIT licence (copyright Edinburgh Genome Foundry). Everyone is welcome to contribute !

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

caravagene-0.1.3.tar.gz (15.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page