This repository collects contributions related to the "Annotations on Structures" topic in the COVID-19 Biohackathon April 5-11 2020.
The context is SWISS-MODEL's involvement in an EU project to combat COVID-19. To accelerate our plan to map relevant annotations onto those structures, we collect tools/platforms which can automatically generate such annotations based on the latest data.
We mainly hope to receive two types of contributions:
Additional topics of interest:
Follow the biohackathon's code of conduct and this project's contributions guidelines.
NOTE: this is work-in-progress and subject to change.
The beta-server of SWISS-MODEL is used to allow users to upload annotations: https://beta.swissmodel.expasy.org/repository/covid_annotation_upload (a list of projects for registered users can be found here).
Both the user annotations and the display of the viral polyprotein (R1AB_SARS2) are still work-in-progress and may have bugs. If you find problems with those prototype SWISS-MODEL features, please add issues to this github project and we will try to address them as soon as possible.
The annotation format is a plain-text format:
One line per annotation
Each annotation will consist of 5 or 6 comma- or tab-separated values:
Example:
P0DTD1 3400 3450 #FF00FF https://swissmodel.expasy.org/repository/ My Awesome Annotation
P0DTC2 230 330 #FFA500 A text reference One more!
The Annotation class available in utils facilitates creation of new annotations:
from utils.sm_annotations import Annotation
# generate example annotations
annotation = Annotation()
# Annotation of residue range with color red provided as RGB
annotation.add("P0DTD1", (10, 20), (1.0, 0.0, 0.0), "red anno")
# Again, annotating a range but this time we're adding a reference
# and provide the color blue as hex
annotation.add("P0DTD1", (21, 30), "#0000FF", "blue anno",
reference = "https://swissmodel.expasy.org/")
# Outputs plain text which is accepted on the covid annotation upload
print(annotation)
# Or directly do a post request (defaults to SWISS-MODEL beta)
print("Visit the following url to see awesome things:")
print(annotation.post(title="awesome things"))
The last line directly creates a new annotation project and prints its url. An example can be viewed here
UniProtKB ACs with links can be found in UniProtKB
Also we are actively working on extending the structural coverage of the SARS-CoV-2 proteome by using protein predictions from colleagues participating in CASP.
Protein structure predictions of SARS-CoV-2 have already proven useful to several research projects. To list a few examples which used our models:
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!