SynBioHub / synbiohub3

Web application enabling users and software to browse, upload, and share synthetic biology designs. This repository is a redesign of the original SynBioHub using React and Spring Boot.
BSD 2-Clause "Simplified" License
11 stars 0 forks source link

Ontology Mapping to Human-Readable IDs in Frontend #340

Open benjhatch opened 1 year ago

benjhatch commented 1 year ago

instead of SBO:113232133 (this doesn't exist), display a useful string like "promoter". Should probably look into Tyto for this.

danielfang97 commented 1 year ago

Bryan Bartley's comment: There's no quick and easy silver bullet, but one possibility is you could port SBH to use a back-end Python flask server (I assume you are using Node client-side). I don't have any experience making flask--react apps but a quick Google seems to suggest it is possible. Then you could simply use the tyto module directly.

On a totally different approach, I have plans and have done some preliminary work at implementing tyto in js but it still have a long way to go. However, as you are probably aware there is a js rdflib module. You could try implementing simple tyto functions using that. (You can copy the sparql queries from the Python codebase). If I remember correctly, however, one challenge here is that I think you have to configure cross-origin resource sharing in order to access external API endpoints using a client-side javascript app.

cjmyers commented 11 months ago

Use sequence-ontology.js and systems-biology-ontology.js to convert these ontology terms to human readable form.

name - what is displayed def - for the information when you hover over it

cjmyers commented 11 months ago

Let's also do EDAM

danielfang97 commented 11 months ago

Fixed with #588. Used the sequence-ontology, systems-biology-ontology and edam ontology dictionaries. If we want to add terms outside these dictionaries, then it would need to added separately like above with tyto.

cjmyers commented 5 months ago

Reopening to create a web service to reduce memory usage and extend number of ontologies supported