Sequencing, kept in sync
OpeNGSync.
Untangle the lab, one status at a time.
An open-source platform for sequencing facilities. It validates complex sample sheets, keeps requests, samples, libraries, and pools connected, and tracks every status from request to delivery.
Python · FastAPI · HTMX · PostgreSQL · Celery · Docker
View on GitHubModern by nature, clean by design
How it works.
Complex inputs are validated, related records stay connected, and status changes cascade through a clean, typed core.
- 01
Requests + sample sheets
Complex inputs checked in guided, multi-step workflows
- 02
FastAPI + HTMX
Server-rendered pages with lazy-loaded fragments
- 03
PostgreSQL + SQLAlchemy
Related samples, libraries, pools, and runs, with a status-transition registry
- 04
Celery workers + Redis
Scan run folders, cascade statuses, back up, and clean up
- 05
Shared data
Expiring links, WebDAV downloads, and a Python API client
The engineering toolbox
Thoughtful tools, working together.
Web
- Python 3.14
- FastAPI
- Jinja2
- HTMX
- Tailwind CSS
Data
- PostgreSQL
- SQLAlchemy
- Alembic
- pgBouncer
- pgBackRest
Background work
- Celery
- Redis
- Illumina InterOp
Analysis + assistance
- pandas
- DuckDB
- Plotly
- Pydantic AI
Security
- WebAuthn passkeys
- Argon2
- API tokens
- Audit log
Operations
- Docker Compose
- nginx
- GitHub Actions
- pytest
Docker Compose, nginx, pgBackRest, and CI/CD keep it deployable, so any sequencing facility can host it.
The idea
Made for busy sequencing labs.
OpeNGSync is a facility-agnostic platform for NGS service requests and lab tracking. It handles intricate inputs and the web of relationships between samples, libraries, pools, and runs, then keeps every status accountable with a recorded history.
Validate complex sample sheets, library types, and multiplexing setups before anything is saved.
Keep requests, samples, libraries, pools, and runs related, with typed statuses and a recorded history.
Share results securely, with roles, passkeys, an audit log, and an API. Any sequencing facility can run it.