Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Golden Gate: backbones assembling together #299

Open
manulera opened this issue Oct 8, 2024 · 2 comments
Open

Golden Gate: backbones assembling together #299

manulera opened this issue Oct 8, 2024 · 2 comments

Comments

@manulera
Copy link
Collaborator

manulera commented Oct 8, 2024

Hi @grassoste, you mentioned that you wanted to discuss a case where a Golden Gate assembly would yield a product where all the backbones are ligated together. You mentioned that you had a minimal example, and it would be interesting to see if they would be handled by the new assembly model.

Do you think you could share it here? If you could just add all input files as a zip in an issue comment, and provide a minimal python example I can check it out.

@manulera manulera changed the title Golden Gate: vectors assembling together Golden Gate: backbones assembling together Oct 8, 2024
@BjornFJohansson
Copy link
Collaborator

BjornFJohansson commented Oct 23, 2024

The ligate module should be used for the assembly part imho. These are some old notes that may not be relevant anymore.

Some functionality was implemented here:

https://github.com/mleiras/pydna/blob/master/src/pydna/golden_gate.py

By a student of mine.

Abstract: https://docs.google.com/document/d/1Ur87xIwNnjQ0B9cblhs1aXBX-m4VrEheGRc0m8Vgf6w
Presentation: https://docs.google.com/presentation/d/1P7PDeygNBjGbOLNA3OxjNPESZEwIDrMdHEZapQnO2So

Function:

GoldenGateDesigner(ampl, enz)

Argument:

seqs: A list of linear sequences, Amplicons or Dseqrecords

enz: A list of golden gate enzymes to use (list in order of preference)

Output:

A list of Amplicons with primers permitting assembly by golden gate

Suggested flow:

0. list all sticly ends...
1. Select compatible enzymes
2. loop over pairs of seqs
3. design relevant primer if needed (add enzyme and comp sticky end)
4. if two amplicons, design both relevant primers
5. Return a list with Dseqrecords and amplicons



5. Check all amplicons for internal restriction sites, select Golden Gate enzymes that do not cut internally
(Use goldenhinges (https://github.com/Edinburgh-Genome-Foundry/GoldenHinges) to select sticky end sequences

Function:

GoldenGateAssembler(seqs)

Argument:

seqs: A list of linear sequences, Amplicons or Dseqrecords
enz: list of enzymes

Output:

The assempled sequence

1. assume all sequences cuts
2. Try to add all sequences in order
3. If assembly not possible raise exception
4. return Dseqrecord

@manulera
Copy link
Collaborator Author

Hi @BjornFJohansson this was about a particular example that @grassoste mentioned during the hackathon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants