Skip to content

Commit

Permalink
refactor: move to api/
Browse files Browse the repository at this point in the history
  • Loading branch information
xnought committed Feb 1, 2024
1 parent 3a4a0c6 commit b034f76
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 12 deletions.
26 changes: 26 additions & 0 deletions backend/src/api/similar.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
from fastapi import APIRouter
from ..api_types import SimilarProtein
from ..protein import (
pdb_file_name,
revert_pdb_filename,
)
from ..foldseek import easy_search

router = APIRouter()


@router.get("/similar-pdb/{protein_name:str}", response_model=list[SimilarProtein])
def get_pdb_proteins(protein_name: str):
# query_name = pdb_file_name(protein_name)
# target_folder = "src/data/pdbAlphaFold/"
# similar = easy_search(query_name, target_folder, out_format=["target", "prob"])
pass
# return [SimilarProtein(name=revert_pdb_filename(s[0]), prob=s[1]) for s in similar]


@router.get("/similar-venome/{protein_name:str}", response_model=list[SimilarProtein])
def get_venome_proteins(protein_name: str):
query_name = pdb_file_name(protein_name)
target_folder = "src/data/pdbAlphaFold/"
similar = easy_search(query_name, target_folder, out_format=["target", "prob"])
return [SimilarProtein(name=revert_pdb_filename(s[0]), prob=s[1]) for s in similar]
15 changes: 3 additions & 12 deletions backend/src/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,23 @@
import os
from io import BytesIO
from fastapi.responses import FileResponse, StreamingResponse
from .api_types import ProteinEntry, UploadBody, UploadError, EditBody, SimilarProtein
from .api_types import ProteinEntry, UploadBody, UploadError, EditBody
from .db import Database, bytea_to_str, str_to_bytea
from .protein import (
parse_protein_pdb,
pdb_file_name,
protein_name_found,
pdb_to_fasta,
revert_pdb_filename,
)
from .setup import disable_cors, init_fastapi_app
from .foldseek import easy_search
from .api import users
from .api import users, similar


app = init_fastapi_app()
disable_cors(app, origins=[os.environ["PUBLIC_FRONTEND_URL"]])

app.include_router(users.router)


@app.get("/similar-venome/{protein_name:str}", response_model=list[SimilarProtein])
def get_venome_proteins(protein_name: str):
query_name = pdb_file_name(protein_name)
target_folder = "src/data/pdbAlphaFold/"
similar = easy_search(query_name, target_folder, out_format=["target", "prob"])
return [SimilarProtein(name=revert_pdb_filename(s[0]), prob=s[1]) for s in similar]
app.include_router(similar.router)


@app.get("/pdb/{protein_name:str}")
Expand Down

0 comments on commit b034f76

Please sign in to comment.