BiNgo Genome Viewer — a lightweight browser-based genomics viewer
Project description
BiNgo Genome Viewer
A lightweight, browser-based genomics viewer for visualizing genomes, coverage tracks, read alignments, variants, and annotations. Built as a modern alternative to IGV.
Supported File Formats
| Type | Formats |
|---|---|
| Genome | GenBank (.gb, .gbk), FASTA (.fasta, .fa) |
| Coverage | BigWig (.bw), WIG (.wig), BedGraph (.bedgraph, .bdg) |
| Reads | BAM (.bam + .bai index) |
| Variants | VCF (.vcf, .vcf.gz) |
| Annotations | BED (.bed), GFF (.gff, .gff3), GTF (.gtf), GenBank (.gb) |
Quick Start
Requires Python 3.10 or newer. Download from python.org if needed.
Install with pip (recommended)
No Node.js required — the frontend is pre-built and bundled.
pip install BiNgoViewer
bingo
Options:
bingo --port 9000 # use a custom port
bingo --no-browser # start without opening the browser
bingo --install # create a desktop shortcut
Windows (one-click)
Double-click Install_Windows.bat. It will install Python dependencies into a local environment and launch the viewer. No command line needed.
macOS / Linux (one-click)
Double-click Install_macOS.command (or run it from a terminal). It will create a virtual environment, install dependencies, and launch the viewer.
Permission denied? Run once in Terminal:
chmod +x Install_macOS.command
Docker
No Python or Node.js required — everything runs inside the container.
cd app
docker compose up --build
Then open http://localhost:8000.
Troubleshooting
| Problem | Solution |
|---|---|
python not found |
Install Python 3.10+ and check Add to PATH during setup |
| pip install fails | Try pip install --user BiNgoViewer or use a virtual environment |
| Port 8000 in use | Run bingo --port 9000 (or any free port) |
| Browser doesn't open | Visit http://localhost:8000 manually |
| Server won't stop | The server auto-exits when you close all browser tabs; or press Ctrl+C |
Usage
- Load files — Use the file picker or drag and drop. Genome and track files are auto-classified by extension.
- Navigate — Click and drag on tracks to pan; scroll wheel to zoom; use the coordinate bar to jump to a region.
- Track settings — Click the gear icon to adjust height, color, scale, and bar width.
- Reorder tracks — Drag the grip handle on any track label.
- Export — Save the current view as SVG or PNG.
- Save session — Store your workspace and restore it later.
Project Structure
├── Install_Windows.bat # Windows installer (double-click)
├── Install_macOS.command # macOS / Linux installer (double-click)
├── README.md
├── pyproject.toml # pip package definition
├── bingoviewer/ # Installable Python package
│ ├── cli.py # `bingo` CLI entry point
│ ├── server/ # FastAPI backend (bundled)
│ └── frontend_dist/ # Pre-built React frontend
└── app/ # Application source code
├── backend/ # Python (FastAPI) REST API
└── frontend/ # React (Vite) user interface
Citation
If you use this software in your research, please cite:
Ngo, B. (2026). BiNgo Genome Viewer (v1.2.0) [Software].
License
All rights reserved. Contact the author for licensing inquiries.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bingoviewer-1.3.4.tar.gz.
File metadata
- Download URL: bingoviewer-1.3.4.tar.gz
- Upload date:
- Size: 120.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef299877c88ab46cf064f62aa4060fdffd252ca127c85e529bbafb818c9700c7
|
|
| MD5 |
feb09260d609ae409bd7be465f867265
|
|
| BLAKE2b-256 |
80e86a0c559aa57a9c85b5c06ae24ec0648496ea1ffb1749615c449525d16cb8
|
Provenance
The following attestation bundles were made for bingoviewer-1.3.4.tar.gz:
Publisher:
publish.yml on billy-ngo/bingo-genome-viewer
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bingoviewer-1.3.4.tar.gz -
Subject digest:
ef299877c88ab46cf064f62aa4060fdffd252ca127c85e529bbafb818c9700c7 - Sigstore transparency entry: 1237268251
- Sigstore integration time:
-
Permalink:
billy-ngo/bingo-genome-viewer@4e8c6beff0081ccfe6d40b873dd3437d2f86c2a1 -
Branch / Tag:
refs/tags/v1.3.4 - Owner: https://github.com/billy-ngo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4e8c6beff0081ccfe6d40b873dd3437d2f86c2a1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file bingoviewer-1.3.4-py3-none-any.whl.
File metadata
- Download URL: bingoviewer-1.3.4-py3-none-any.whl
- Upload date:
- Size: 127.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
410dfaead7a657f1c1ed24af794595ea120379a797e762fd91d06a2bc7d4c3c1
|
|
| MD5 |
a923f7ac1792ee43cdb40261143b7fae
|
|
| BLAKE2b-256 |
fc583bcbb33eebf9a5c5ac92ccde36a9aeba732e1795758fbe43d5bf5bb5f72f
|
Provenance
The following attestation bundles were made for bingoviewer-1.3.4-py3-none-any.whl:
Publisher:
publish.yml on billy-ngo/bingo-genome-viewer
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bingoviewer-1.3.4-py3-none-any.whl -
Subject digest:
410dfaead7a657f1c1ed24af794595ea120379a797e762fd91d06a2bc7d4c3c1 - Sigstore transparency entry: 1237268253
- Sigstore integration time:
-
Permalink:
billy-ngo/bingo-genome-viewer@4e8c6beff0081ccfe6d40b873dd3437d2f86c2a1 -
Branch / Tag:
refs/tags/v1.3.4 - Owner: https://github.com/billy-ngo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4e8c6beff0081ccfe6d40b873dd3437d2f86c2a1 -
Trigger Event:
push
-
Statement type: