Templated Abstract Polymorphic LIMS - A Laboratory Information Management System
Project description
Bloom
Bloom is the wet-lab and material-state authority in this workspace.
It owns the physical side of the beta LIMS flow:
- containers and placements
- specimens and derived materials
- extraction, QC, library-prep, pool, and run objects
- sequenced library assignments
- wet-lab queue membership and queue-transition state
- Bloom-side lineage linking to Atlas fulfillment context
It does not own:
- customer-portal data and tenant administration
- patient, clinician, shipment, TRF, or test truth
- artifact registry authority
- analysis execution or result-return workflows
Runtime Shape
Bloom is a FastAPI application with both API and server-rendered GUI surfaces.
Primary entrypoints:
- app entrypoint:
main.py - app factory:
bloom_lims.app:create_app - CLI entrypoint:
bloom
Primary CLI groups:
bloom server: start, stop, status, logsbloom db: TapDB lifecycle and Bloom template seedingbloom integrations atlas: show and validate Atlas integration configbloom test,bloom quality,bloom users,bloom config
API Surface
Canonical API router prefix: /api/v1
Core route groups mounted today:
/api/v1/objects/api/v1/containers/api/v1/content/api/v1/equipment/api/v1/templates/api/v1/subjects/api/v1/lineages/api/v1/search/api/v1/search/v2/api/v1/object-creation/api/v1/tracking/api/v1/user-tokens/api/v1/admin/*/api/v1/external/specimens/api/v1/external/atlas/api/v1/external/atlas/beta
Server-rendered GUI routes remain active under the root app, including login, operational views, and graph screens.
Cross-Repo Boundaries
- Atlas sends accepted-material and status traffic into Bloom.
- Bloom links physical execution state back to Atlas TRF/test/fulfillment-item context.
- Bloom can register run artifacts in Dewey when Dewey integration is enabled.
- Ursa resolves sequencing context from Bloom using run and lane identifiers.
TapDB Mount
Bloom can mount the TapDB admin surface inside the same server process.
Mounted path defaults to /admin/tapdb.
Mounted-mode rules:
- Bloom session auth is the gate.
- access is admin-only
- unauthenticated browser requests redirect to
/login - mounted TapDB local login is disabled
Timezone Policy
- Bloom persists timestamps in UTC.
- display timezone is user-configurable via TapDB-backed
system_userpreferences - canonical preference key:
display_timezone
Local Development
Typical local flow:
source bloom_activate.sh
pip install -e .
bloom db build
bloom server start --foreground
Focused validation commands:
source bloom_activate.sh
pytest --no-cov tests/test_api_atlas_bridge.py tests/test_atlas_lookup_resilience.py tests/test_queue_flow.py tests/test_run_resolver.py tests/test_beta_cross_repo_smoke.py
ruff check bloom_lims tests
Current Docs
Historical execution plans remain in docs/, but they are reference material rather than the primary source of truth.
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 bloom_lims-1.0.1.tar.gz.
File metadata
- Download URL: bloom_lims-1.0.1.tar.gz
- Upload date:
- Size: 13.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74c7950cd2bfc1fe7c27c3d83b67a52827cd5a4888c4c9e1fc8621e04caf28ea
|
|
| MD5 |
2011a60109038b245229fe3ee18829bf
|
|
| BLAKE2b-256 |
0bc7cddaa0ed247e96f188bd5781220158e261fe0f6b30f47cadd6781ead02be
|
File details
Details for the file bloom_lims-1.0.1-py3-none-any.whl.
File metadata
- Download URL: bloom_lims-1.0.1-py3-none-any.whl
- Upload date:
- Size: 9.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0283ea4f9f9de1fff20d3c3ad802b3e0da7faae5501b6334be1c203983d20f9
|
|
| MD5 |
20a15e86c7cdf9dc446c003128c1ef0f
|
|
| BLAKE2b-256 |
8c6a08e967c63c835655ca6330e47262c7599ff8b7c374cdb5098b4b05ed7922
|