Vectors

MoClo vector classes.

A vector is a plasmidic DNA sequence that can hold a combination of modules of the same level to create a single module of the following level. Vectors contain a placeholder sequence that is replaced by the concatenation of the modules during the Golden Gate assembly.

Abstract

class moclo.core.vectors.AbstractVector(object)[source]

An abstract modular cloning vector.

assemble(module, *modules, **kwargs)[source]

Assemble the provided modules into the vector.

Parameters
  • module (AbstractModule) – a module to insert in the vector.

  • modules (AbstractModule, optional) – additional modules to insert in the vector. The order of the parameters is not important, since modules will be sorted by their start overhang in the function.

Returns

the assembled sequence with sequence annotations inherited from the vector and the modules.

Return type

SeqRecord

Raises
  • DuplicateModules – when two different modules share the same start overhang, leading in possibly non-deterministic constructs.

  • MissingModule – when a module has an end overhang that is not shared by any other module, leading to a partial construct only

  • InvalidSequence – when one of the modules does not match the required module structure (missing site, wrong overhang, etc.).

  • UnusedModules – when some modules were not used during the assembly (mostly caused by duplicate parts).

overhang_end()[source]

Get the downstream overhang of the vector sequence.

overhang_start()[source]

Get the upstream overhang of the vector sequence.

placeholder_sequence()[source]

Get the placeholder sequence in the vector.

The placeholder sequence is replaced by the concatenation of modules during the assembly. It often contains a dropout sequence, such as a GFP expression cassette that can be used to measure the progress of the assembly.

classmethod structure()[source]

Get the vector structure, as a DNA regex pattern.

Warning

If overloading this method, the returned pattern must include 3 capture groups to capture the following features:

  1. The downstream (3’) overhang sequence

  2. The vector placeholder sequence

  3. The upstream (5’) overhang sequence

target_sequence()[source]

Get the target sequence in the vector.

The target sequence if the part of the plasmid that is not discarded during the assembly (everything except the placeholder sequence).

Level -1

class moclo.core.vectors.EntryVector(AbstractVector)[source]

Level 0 vector.

Level 0

class moclo.core.vectors.CassetteVector(AbstractVector)[source]

Level 1 vector.

Level 1

class moclo.core.vectors.DeviceVector(AbstractVector)[source]

Level 2 vector.