Queue Generation System
Generate sample queues with QC injections for mass spectrometry instruments (XCalibur, Chronos, Hystar).
▶ Try the live demos
Launch the queue generator in your browser →
Launch the config editor in your browser →
No install, no account. The queue generator demo lets you upload a CSV/XLSX sample table (or load a bundled example), pick the instrument / sampler / pattern, preview the queue, and download it. The config editor demo lets you inspect, edit, and validate the configuration in the browser.
qg is a standalone tool: upload a CSV/XLSX sample table in the GUI (or pass a
parameters JSON to the CLI), configure the queue, preview, and download — no
FGCZ/B-Fabric required. It also runs as the FGCZ B-Fabric portal app (LIMS order
browsing + workunit upload); see the B-Fabric guide.
📖 Documentation: fgcz.github.io/qg — local-app and editor guides, the queue-generation algorithm, and the configuration reference.
Installation
pip install ms-qg # as a dependency
uv sync --no-group portal # for development in this repo, B-Fabric-free
Requires Python 3.13 or newer.
This installs the local app plus the qg, qg-assign-positions, and qg-validate
CLIs. The core install has no
bfabric, fastapi, starlette, or python-gitlab dependency — import qg, the
local app, and the CLIs all work without them. For the FGCZ B-Fabric portal,
install the ms-qg[bfabric] extra — see the B-Fabric guide.
Quick Start
Local app — no B-Fabric
make app-local
# or: qg-app-local
# or: uv run marimo run src/qg/apps/queue_app_local.py
Upload a sample table — ready-made examples (vial/plate, single- and
multi-project) live in docs/examples/ — pick the
instrument / sampler / pattern, preview, and download the queue plus its
parameters JSON. See docs/users/local_app.md.
CLI
uv run qg config.json -o queue.csv # generate a queue from a parameters JSON (stdout if no -o)
uv run qg-assign-positions config.json -o positioned.json # assign/validate physical positions only
uv run qg-validate # validate the config files
Running at FGCZ? The B-Fabric portal app, its
ms-qg[bfabric]install, project cache seeding, and deployment all live in the B-Fabric guide.
Supported Configurations
Technologies
- Proteomics
- Metabolomics (with pos/neg polarity)
- Lipidomics (with pos/neg polarity)
Samplers
| Sampler | Instruments |
|---|---|
| Vanquish | ASTRAL_1, EXPLORIS_3/4/5, QEXACTIVEHF_2, QUANTIVA_1 |
| MClass | ASCEND_1, EXPLORIS_1/2, LUMOS_2, QEXACTIVE_1 |
| Evosep | ASTRAL_1, EXPLORIS_1/2, TIMSTOF_1, TIMSTOFFLEX_1 |
Output Formats
- XCalibur (
.csv,xcalibur/xcalibur_sii) - Chronos (
.csv) - Hystar (
.xml)
Queue Parameters JSON
Queue generation takes a JSON file with a parameters object (instrument,
sampler, output format, pattern, …) and a nested queue object (batches plus
samples, or plates/cells for plate input). The canonical schema and
field-by-field reference live in one place:
docs/reference/config.md.
Example Output
File Name,Path,Instrument Method,Position,Inj Vol,Sample Type,Sample Name
20260112_001_C37180_autoQC02dia,D:\Data2San\p37180\Proteomics\ASTRAL_1\cpanse_20260112,C:\Methods\Proteomics\ASTRAL_1\DIA_60min.meth,B:F8,1.0,QC,autoQC02dia
20260112_002_C37180_autoQC01,D:\Data2San\p37180\Proteomics\ASTRAL_1\cpanse_20260112,C:\Methods\Proteomics\ASTRAL_1\DIA_60min.meth,B:F9,2.0,QC,autoQC01
20260112_003_C37180_S852285_HeLa_10ng,D:\Data2San\p37180\Proteomics\ASTRAL_1\cpanse_20260112,C:\Methods\Proteomics\ASTRAL_1\DIA_60min.meth,Y:A1,2.0,Unknown,HeLa_10ng
Configuration Files
Static config lives in qg_configs/, grouped under
core/{structure,position,formatting,methods}/ and ui/. The per-file
reference (purpose, columns, examples) is maintained in one place:
docs/reference/config.md.
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 ms_qg-0.12.1.tar.gz.
File metadata
- Download URL: ms_qg-0.12.1.tar.gz
- Upload date:
- Size: 1.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5567931590f953751cd663baa051bfddfd46fa4a6897e23c2bad1a57b16a0bfb
|
|
| MD5 |
4bd589f045cb7c2b809da8251d52e5df
|
|
| BLAKE2b-256 |
a001b4ca08f3bda7441b96a751fd316b9adac5443fb70a774377efdae17a5a97
|
File details
Details for the file ms_qg-0.12.1-py3-none-any.whl.
File metadata
- Download URL: ms_qg-0.12.1-py3-none-any.whl
- Upload date:
- Size: 171.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c163848012fd4afeabeba5ba0986228efe4e176f678ef87a026f0f065a5d7a29
|
|
| MD5 |
a1f7a881d4fc891d2199fc0fd5abbe71
|
|
| BLAKE2b-256 |
c1d1a0ef5357f57107432d00b37e38bf006f994512965766284043c590945a4d
|