Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/biopragmatics/biolookup
π The Biolookup Service retrieves metadata and ontological information about biomedical entities.
https://github.com/biopragmatics/biolookup
bioinformatics biology biopragmatics cheminformatics chemistry flask metadata obofoundry ontology
Last synced: 2 months ago
JSON representation
π The Biolookup Service retrieves metadata and ontological information about biomedical entities.
- Host: GitHub
- URL: https://github.com/biopragmatics/biolookup
- Owner: biopragmatics
- License: mit
- Created: 2021-08-29T09:06:03.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-06-26T15:18:41.000Z (over 2 years ago)
- Last Synced: 2024-04-29T10:22:18.343Z (10 months ago)
- Topics: bioinformatics, biology, biopragmatics, cheminformatics, chemistry, flask, metadata, obofoundry, ontology
- Language: Python
- Homepage: http://biolookup.io
- Size: 155 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.rst
- License: LICENSE
Awesome Lists containing this project
README
BiolookupGet metadata and ontological information about biomedical entities.
### π Querying the Biolookup Service
The Biolookup Service has an endpoint `/api/lookup/` for retrieving metadata and ontological
information about a biomedical entity via its compact identifier (CURIE).```python
import requestsres = requests.get("http://localhost:5000/api/lookup/doid:14330").json()
assert res["name"] == "Parkinson's disease"
assert res["identifier"] == "14330"
assert res["prefix"] == "doid"
assert res["definition"] is not None # not shown for brevity
```The [INDRA Lab](https://indralab.github.io) hosts an instance of the Biolookup Service at
http://biolookup.io, so you can alternatively use `http://biolookup.io/api/lookup/doid:14330`.The same can be accomplished using the `biolookup` package:
```python
import biolookupres = biolookup.lookup("doid:14330")
assert res["name"] == "Parkinson's disease"
# ... same as before
```If you've configured the `BIOLOOKUP_SQLALCHEMY_URI` environment variable (or any other valid way
with [`pystow`](https://github.com/cthoyt/pystow) to point directly at the database for an instance
of the Biolookup Service, it will make a direct connection to the database instead of using the
web-based API.### πΈοΈ Running the Lookup App
You can run the lookup app in local mode with:
```shell
$ biolookup web --lazy
```This means that the in-memory data from `pyobo` are used. If you have a large external database, you
can run in remote mode with the `--sql` flag:```shell
$ biolookup web --sql --uri postgresql+psycopg2://postgres:biolookup@localhost:5434/biolookup
```If `--uri` is not given for the `web` subcommand, it
uses `pystow.get_config("biolookup", "sqlalchemy_uri)`to look up from `BIOLOOKUP_SQLALCHEMY_URI` or
in `~/.config/biolookup.ini`. If none is given, it defaults to a SQLite database
in `~/.data/biolookup/biolookup.db`.### ποΈ Load the Database
```shell
$ biolookup load --uri postgresql+psycopg2://postgres:biolookup@localhost:5434/biolookup
```If `--uri` is not given for the `load` subcommand, it
uses `pystow.get_config("biolookup", "sqlalchemy_uri)`to look up from `BIOLOOKUP_SQLALCHEMY_URI` or
in `~/.config/biolookup.ini`. If none is given, it creates a defaults a SQLite database
at `~/.data/biolookup/biolookup.db`.## π Installation
The most recent release can be installed from
[PyPI](https://pypi.org/project/biolookup/) with:```bash
$ pip install biolookup
```The most recent code and data can be installed directly from GitHub with:
```bash
$ pip install git+https://github.com/biopragmatics/biolookup.git
```To install in development mode, use the following:
```bash
$ git clone git+https://github.com/biopragmatics/biolookup.git
$ cd biolookup
$ pip install -e .
```## π Contributing
Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See
[CONTRIBUTING.rst](https://github.com/biopragmatics/biolookup/blob/master/CONTRIBUTING.rst) for more
information on getting involved.## π Attribution
### βοΈ License
The code in this package is licensed under the MIT License.
### π Support
The Biolookup Service was developed by the [INDRA Lab](https://indralab.github.io), a part of the
[Laboratory of Systems Pharmacology](https://hits.harvard.edu/the-program/laboratory-of-systems-pharmacology/about/)
and the [Harvard Program in Therapeutic Science (HiTS)](https://hits.harvard.edu)
at [Harvard Medical School](https://hms.harvard.edu/).### π° Funding
This project has been supported by the following grants:
| Funding Body | Program | Grant |
|----------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|-----------------|
| DARPA | [Automating Scientific Knowledge Extraction (ASKE)](https://www.darpa.mil/program/automating-scientific-knowledge-extraction) | HR00111990009 |### πͺ Cookiecutter
This package was created with [@audreyfeldroy](https://github.com/audreyfeldroy)'s
[cookiecutter](https://github.com/cookiecutter/cookiecutter) package
using [@cthoyt](https://github.com/cthoyt)'s
[cookiecutter-snekpack](https://github.com/cthoyt/cookiecutter-snekpack) template.