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.