Cameo is a high-level python library developed to aid the strain design process in metabolic engineering projects. The library provides a modular framework of simulation and strain design methods that targets developers that want to develop new design algorithms and custom analysis workflows. Furthermore, it exposes a high-level API to users that just want to compute promising strain designs.
Curious? Head over to try.cameo.bio and give it a try.
Please cite https://doi.org/10.1021/acssynbio.7b00423 if you've used cameo in a scientific publication.
Use pip to install cameo from PyPI.
$ pip install cameo
In case you downloaded or cloned the source code from GitHub or your own fork, you can run the following to install cameo for development.
$ pip install -e <path-to-cameo-repo> # recommended
You might need to run these commands with administrative privileges if you're not using a virtual environment (using sudo
for example). Please check the documentation for further details.
Documentation is available on cameo.bio. Numerous Jupyter notebooks provide examples and tutorials and also form part of the documentation. They are also availabe in executable form on (try.cameo.bio). Furthermore, course materials for a two day cell factory engineering course are available here.
Compute strain engineering strategies for a desired product in a number of host organisms using the high-level interface (runtime is on the order of hours).
from cameo.api import design
design(product='L-Serine')
The high-level API can also be called from the command line.
$ cameo design vanillin
For more information run
$ cameo --help
Find gene knockout targets using evolutionary computation.
from cameo import models
from cameo.strain_design.heuristic import GeneKnockoutOptimization
from cameo.strain_design.heuristic.objective_functions import biomass_product_coupled_yield
model = models.bigg.e_coli_core
obj = biomass_product_coupled_yield(
model.reactions.Biomass_Ecoli_core_w_GAM,
model.reactions.EX_succ_e,
model.reactions.EX_glc_e)
ko = GeneKnockoutOptimization(model=model, objective_function=obj)
ko.run(max_evaluations=50000, n=1, mutation_rate=0.15, indel_rate=0.185)
Predict heterologous pathways for a desired chemical.
from cameo.strain_design import pathway_prediction
predictor = pathway_prediction.PathwayPredictor(model)
pathways = predictor.run(product="vanillin")
... are very welcome! Please read the guideline for instructions how to contribute.