https://github.com/lagosproject/bio-engine
A local API-based biological engine that uses Tracy for sequence alignment and VEP for variant annotation. Built with Python for computational biology and bioinformatics analysis.
https://github.com/lagosproject/bio-engine
api bioinformatics computational-biology genomics python sequence-alignment tracy variant-annotation vep
Last synced: about 1 month ago
JSON representation
A local API-based biological engine that uses Tracy for sequence alignment and VEP for variant annotation. Built with Python for computational biology and bioinformatics analysis.
- Host: GitHub
- URL: https://github.com/lagosproject/bio-engine
- Owner: lagosproject
- License: mit
- Created: 2026-02-23T12:14:13.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2026-03-27T10:29:17.000Z (about 2 months ago)
- Last Synced: 2026-04-03T00:43:37.434Z (about 2 months ago)
- Topics: api, bioinformatics, computational-biology, genomics, python, sequence-alignment, tracy, variant-annotation, vep
- Language: Python
- Homepage:
- Size: 115 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bio-Engine Sidecar
The Bio-Engine is an asynchronous backend service designed to handle heavy bioinformatics computational tasks for [PS Analyzer](https://github.com/lagosproject/ps-analyzer). It acts as an integration layer between the main web application and native bioinformatics tools like `tracy`, executing alignments, variant calling, and sequence annotations (HGVS, VEP).
## Features
- **Asynchronous Job Management**: Jobs are executed in isolated background threads.
- **Tracy Wrapper**: Advanced DNA sequence decomposition, basecalling, and alignment using the [tracy](https://github.com/gear-genomics/tracy) C++ framework.
- **Variant Recoder & VEP**: Genomic consequence prediction via the Ensembl REST API with built-in batch handling and fallback strategies.
- **HGVS Notation**: Accurate nomenclature mapping powered by Universal Transcript Archive (UTA).
## System Requirements
- Python >= 3.10
- [Tracy CLI API](https://github.com/gear-genomics/tracy): Must be installed and available in the system `PATH`.
- `samtools` and `bgzip`: Needed for auto-indexing very large reference files (>50Kbp).
## Installation
You can install the dependencies via `pip`:
```bash
pip install -r requirements.txt
```
*(Alternatively, use `pip install .` to install via `pyproject.toml`)*
## Running the Engine
Start the FastAPI server via Uvicorn:
```bash
uvicorn main:app --host 127.0.0.1 --port 8000
```
Or simply:
```bash
python main.py
```
## API Documentation
Once the server is running, the Swagger UI is available at `http://127.0.0.1:8000/docs`, where you can explore and interact with the endpoints.
## Development & Refactoring
This codebase follows PEP8 guidelines enforced by `ruff`. To check style errors, run:
```bash
ruff check .
```
And to automatically format your changes:
```bash
ruff format .
```