https://github.com/clinical-genomics/preclinvar
A ClinVar API submission helper written in FastAPI
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
✓Academic publication links
Links to: ncbi.nlm.nih.gov -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.8%) to scientific vocabulary
Repository
A ClinVar API submission helper written in FastAPI
Basic Info
- Host: GitHub
- Owner: Clinical-Genomics
- License: mit
- Language: Python
- Default Branch: main
- Size: 407 KB
Statistics
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 7
- Releases: 18
Metadata Files
README.md
PreClinVar
A ClinVar API submission helper written in FastAPI.
Availability:
A running instance of the service is available at https://preclinvar.scilifelab.se/docs
Available endpoints:
tsv2json
Transforms tsv submission files from a germline submission (Variant.tsv and CaseData.tsv) into a json submission object, ready to be used to submit via the ClinVar API. This document is validated against the ClinVar API submission schema
csv2json
Transforms csv submission files from a germline submission (Variant.csv and CaseData.csv) into a json submission object, ready to be used to submit via the ClinVar API. This document is validated against the ClinVar API submission schema
dry_run
Proxy endpoint to the ClinVar submissions API (dry-run): https://submit.ncbi.nlm.nih.gov/api/v1/submissions/?dry-run=true. Requires a valid API key and a json file containing a submission object. If the request is valid (and the json submission object is validated) returns a response with code 200 and json body with the message value "success".
apitest
Proxy endpoint to the validation API endpoint: (apitest) "https://submit.ncbi.nlm.nih.gov/apitest/v1/submissions". Requires a valid API key and a json file containing a submission object. If the json submission document is valid returns a submission ID which can be used for a real submission. If the json submission document is not validated, the endpoint returns a list of errors which will help fixing the document.
Running the application using Docker-compose
An example containing a demo setup for the app is included in the docker-compose file. Start the docker-compose demo using this command:
docker-compose up -d
The server will be running and accepting requests sent from outside the container (another terminal or a web browser) on port 7000 (http://0.0.0.0:7000)
Installing the application on a local conda environment
Given a conda environment containing Python 3.9 and poetry, clone the repository from Github with the following command:
git clone https://github.com/Clinical-Genomics/preClinVar.git
The command will create a folder named preClinVar in your current working directory. Move inside this directory:
cd preClinVar
And install the software with poetry:
poetry install
You can run an instance of the server by typing:
uvicorn preClinVar.main:app --reload --log-level debug
The server will run on localhost and default port 8000 (http://127.0.0.1:8000)
Testing the endpoints
The endpoints will be available under the docs: http://127.0.0.1:8000/docs (http://127.0.0.1:7000/docs if you are running the dockerized version of the app). They can be tested with files provided in this repository, in the demo folder: https://github.com/Clinical-Genomics/preClinVar/tree/main/preClinVar/demo
Owner
- Name: Clinical Genomics
- Login: Clinical-Genomics
- Kind: organization
- Location: Stockholm, Sweden
- Website: https://clinical-genomics.github.io
- Repositories: 67
- Profile: https://github.com/Clinical-Genomics
GitHub Events
Total
- Create event: 15
- Release event: 3
- Issues event: 18
- Delete event: 15
- Issue comment event: 28
- Push event: 43
- Pull request event: 27
Last Year
- Create event: 15
- Release event: 3
- Issues event: 18
- Delete event: 15
- Issue comment event: 28
- Push event: 43
- Pull request event: 27
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 48
- Total pull requests: 71
- Average time to close issues: about 1 month
- Average time to close pull requests: 1 day
- Total issue authors: 3
- Total pull request authors: 2
- Average comments per issue: 1.06
- Average comments per pull request: 1.27
- Merged pull requests: 62
- Bot issues: 0
- Bot pull requests: 4
Past Year
- Issues: 12
- Pull requests: 21
- Average time to close issues: about 1 month
- Average time to close pull requests: about 4 hours
- Issue authors: 2
- Pull request authors: 2
- Average comments per issue: 0.75
- Average comments per pull request: 1.19
- Merged pull requests: 16
- Bot issues: 0
- Bot pull requests: 1
Top Authors
Issue Authors
- northwestwitch (45)
- dnil (2)
- Jakob37 (1)
Pull Request Authors
- northwestwitch (86)
- dependabot[bot] (6)
- dnil (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- actions/setup-python master composite
- actions/checkout v2 composite
- elgohr/Publish-Docker-Github-Action master composite
- actions/checkout v2 composite
- docker/build-push-action v2 composite
- docker/login-action v1 composite
- docker/setup-buildx-action v1 composite
- tj-actions/branch-names v5 composite
- actions/checkout v1 composite
- dangoslen/changelog-enforcer v1.1.1 composite
- actions/checkout v2 composite
- actions/setup-python master composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- codecov/codecov-action v2 composite
- Ana06/get-changed-files v2.0.0 composite
- actions/checkout v2 composite
- anaynayak/python-vulture-action v1.0 composite
- actions/checkout v2 composite
- get-woke/woke-action v0 composite
- clinicalgenomics/python3.8-venv 1.0 build
- atomicwrites 1.4.0 develop
- coverage 6.4.4 develop
- iniconfig 1.1.1 develop
- packaging 21.3 develop
- pluggy 1.0.0 develop
- py 1.11.0 develop
- pyparsing 3.0.9 develop
- pytest 7.1.2 develop
- pytest-cov 3.0.0 develop
- anyio 3.6.1
- attrs 21.4.0
- black 22.6.0
- certifi 2022.6.15
- charset-normalizer 2.0.12
- click 8.1.3
- colorama 0.4.5
- fastapi 0.78.0
- gunicorn 20.1.0
- h11 0.13.0
- idna 3.3
- importlib-resources 5.8.0
- isort 5.10.1
- jsonschema 4.6.1
- mypy-extensions 0.4.3
- pathspec 0.9.0
- platformdirs 2.5.2
- pydantic 1.9.1
- pyrsistent 0.18.1
- python-multipart 0.0.5
- requests 2.28.0
- responses 0.21.0
- six 1.16.0
- sniffio 1.2.0
- starlette 0.19.1
- tomli 2.0.1
- typing-extensions 4.2.0
- urllib3 1.26.9
- uvicorn 0.18.2
- zipp 3.8.0
- pytest ^7.1.2 develop
- pytest-cov ^3.0.0 develop
- requests ^2.28.0 develop
- black ^22.6.0
- fastapi ^0.78.0
- gunicorn ^20.1.0
- isort ^5.10.1
- jsonschema ^4.6.1
- python ^3.8
- python-multipart ^0.0.5
- responses ^0.21.0
- uvicorn ^0.18.2