Module Catalogue
xOpat ships with the following modules. Pages are generated from each component's include.json; availability in a concrete deployment depends on the server configuration.
Uncategorized
| Module | ID | Version | Description | |
|---|---|---|---|---|
| Annotation Measurements | annotation-measurements | 0.1.0 | Pixel-aware metrics over annotated regions: intensity statistics, % positive, connected-component analysis. Pure compute layer; UI lives in the annotations plugin. | |
| Annotations Module | annotations | 0.1.0 | A module that brings annotations functionality. | |
| Chat Based Tester | chat-based-tester | 1.0.0 | Developer chat harness for viewer testing using vercel-ai-chat-sdk | experimental |
| RationAI Enhanced WSI Service by Empaia | empaia-wsi-tile-source | 0.1.0 | — | |
| Graphics canvas FabricJS over OSD | fabricjs | 0.1.0 | — | |
| GeoTiff Tiff Format Support | geotiff | 0.1.0 | Supports TIFF files through GeoTIFF library. Adds a TileSource support, and defines new tiff-related OpenSeadragon data types. | |
| Human-readable ID generator | human-readable-ids | 0.1.0 | — | |
| ICC Profiles On Client | icc-profiles | 0.1.0 | Mounts ICC Profile loading to OpenSeadragon. It is implemented using WASM with thread workers. | |
| IO GitHub Sink | io-github-sink | 0.1.0 | GitHub-backed bundle sink for the IO pipeline. Hydrates from and writes back to a configured repository path; admin-routable via ENV.client.io.bindings. The GitHub PAT is held server-side under server.secure.proxies. | |
| IO MLflow Sink | io-mlflow-sink | 0.1.0 | Routes xOpat data into MLflow experiments and runs through the IO pipeline. Admin-routable via ENV.client.io.bindings; the record layout is chosen from named templates or a custom mapper. The MLflow credential is held server-side by a proxy alias and never reaches the client. | experimental |
| JWT Token Decoder | jwt-decode | 4.0.0 | — | |
| marked (NPM) | @xopat-npm-module/marked | 0.1.0 | — | |
| Page builder for Advanced Menu | menu-pages | 0.1.0 | — | |
| MLflow Client | mlflow | 0.2.0 | Low-level MLflow REST client (experiments, runs, metrics, artifacts). A plain library — it performs no IO on its own. To route xOpat data into MLflow, use the io-mlflow-sink module. | experimental |
| OIDC Client for JavaScript | oidc-client-ts | 2.4.0 | Library to provide OpenID Connect (OIDC) and OAuth2 protocol support for client-side, browser-based JavaScript client applications. Also included is support for user session and access token management. | |
| Server-side OIDC (confidential) | oidc-server-ts | 1.0.0 | Server-side OIDC token provider: keeps the client_secret + refresh_token on the server, runs authorize/callback/refresh server-side, and injects the current access/id token into XOpatUser so HttpClient works transparently. Use for IdPs that require a confidential client. | |
| Pathology Foundation Models | pathology-foundation | 0.2.0 | Broker that runs named pathology jobs on the active viewport. Ships a built-in, dependency-free tissue detector (works out of the box, nothing leaves the viewer) and lets drivers register per feature (tissue-mask / segment / analyze). Exposes the pathology scripting namespace for LLM/agent use. | |
| Polly.js | pollyjs | 6.0.6 | Polly.JS is a standalone, framework-agnostic JavaScript library that enables recording, replaying, and stubbing of HTTP interactions. | |
| RationAI Enhanced WSI Service by Empaia | rationai-wsi-tile-source | 0.1.0 | — | |
| Recorder | recorder | 1.0.0 | Captures keyframe and navigation snapshots per viewer as named recordings and plays them back as a timeline. | |
| Html Sanitization | sanitize-html | 2.11.0 | — | |
| Speech to Text | speech-to-text | 1.0.0 | Microphone capture and speech transcription with pluggable drivers (remote self-hosted Whisper by default, in-browser WASM fallback). | |
| VEGA: The visualization grammar | vega | — | — | |
| VEGA: The visualization grammar (with secure interpreter) | vega-secure | — | — | |
| AI Chat | vercel-ai-chat-sdk | 1.0.0 | Integration hub for AI chat models |