-
Notifications
You must be signed in to change notification settings - Fork 82
Backend Integrations
External providers behind interfaces — labs (IDEXX), the Merck veterinary knowledge base, and codes/terminology. Architecture context: FHIR and Interoperability. Part of Backend Overview.
-
src/integrations/— a generic adapter registry,getIntegrationAdapter(provider)keyed byIntegrationProvider(IDEXX,MERCK_MANUALS). Files:integrations/index.ts,integrations/types.ts,integrations/idexx/{idexx.client.ts, idexx.adapter.ts, idexx-results.client.ts},integrations/merck/{merck.client.ts, merck.adapter.ts}. -
src/labs/— a lab-order adapter registry,getLabOrderAdapter(provider)(currentlyIDEXXonly):labs/idexx/{idexx-order.adapter.ts, idexx.shared.ts},labs/{status.ts, types.ts, index.ts}.
Keeping providers behind getIntegrationAdapter / getLabOrderAdapter is the "agnostic labs" principle — adding Antech or an in-house analyzer is a new adapter, not a rewrite.
- Routers:
lab-order.router.ts(LabOrderController+LabCensusController),lab-result.router.ts(LabResultController). - Controllers:
web/lab-order.controller.ts,web/lab-result.controller.ts,web/lab-census.controller.ts. - Services:
lab-order.service.ts,lab-result.service.ts,lab-status.service.ts,lab-census.service.ts,idexx-reference.service.ts,idexx-results.service.ts,idexx-results-query.service.ts. - Models: lab order/result entities are Prisma-only (their Mongoose models were removed in PR #1819).
- Async:
idexx-reference.*,lab-status.*,lab-results.*BullMQ jobs poll and ingest results into the companion timeline.
- Router
knowledge.router.ts→web/merck.controller.ts(MerckController) +app/merck.controller.ts(MerckMobileController); servicemerck.service.ts;controllers/merck/merck-response.ts. Surfaced in the mobile Merck feature.
Supporting integrations that back clinical coding and audit:
- Codes:
code.router.ts→web/code.controller.ts→code.service.ts,code-sync.service.ts,clinical-terms.service.ts; modelscode-entry.ts,code-mapping.ts. This powers the SOAP clinical-term autocomplete plan (GET /v1/codes/terms/suggest). - Audit:
audit-trail.router.ts→web/audit-trail.controller.ts→audit-trail.service.ts, modelaudit-trail.ts. - Integration accounts (per-org credentials):
integration.router.ts→web/integration.controller.ts→integration.service.ts(the entity is Prisma-only since PR #1819).
Home · Architecture · ADRs · Plans · Roadmap · Contributing · Main repo · DeepWiki · Discord
Yosemite Crew is a product of DuneXploration UG (haftungsbeschränkt). This wiki mirrors the repository; where a page and the repo disagree, the repo wins. See the Wiki Style Guide.
Product & Domain
Architecture
Applications
- Backend — Overview
- Frontend / PIMS Web — Overview
- Mobile — Overview
- Desktop PIMS Shell
- Developer Portal
- SuperAdmin
Design & Accessibility
Engineering Handbook
Decisions (ADRs)
Design Docs & Plans
Meta
Canonical code & docs: main repo · Auto-generated companion: DeepWiki