CIM UX laboratory

A full recreation of the Community Integration Manager—not the production app, but a purpose-built sandbox to test UX paradigms, route-based A/B variants, and redesigned workflows. The lab SPA consumes a FHIR-based API that maps back to synthetic data from the Ayin Data Generator, so claim, member, and referral flows run end-to-end with no real PHI.

UX recreationA/B variantsFHIR APIData GeneratorVue 3 · Quasar
CIM UX laboratory dashboard with tool cards and fictional plan context
Lab dashboard — real CIM tool shapes (Member, Claim, Referral, Documents) over synthetic Pacific Crest–style data

What this is (and is not)

Production CIM is the multi-tenant ops system health plans use every day. This project is a recreation of that product surface: same domains (claims, members, referrals, documents, tasks), same density and multi-tenant chrome, but built as a design laboratory. The goal is not to ship another production stack—it is to learn faster than production allows.

  • Is: a high-fidelity Vue/Quasar environment for paradigm tests, A/B variants, workflow rewrites, and design-system conversion.
  • Is not: the live CIM deployment, a substitute for production data, or Ayin Iris (a separate product).
  • Data: synthetic only—members, claims, referrals, and carriers from the Data Generator. No production PHI enters the lab.
  • Integration: the lab does not hard-code a one-off JSON dump as the product model. It talks to a FHIR-based API whose resources map back to generator output—so workflows stay realistic from search → workspace → related entities.

End-to-end: FHIR API + Data Generator

Complete demos need a real contract, not screenshots with static fixtures. The CIM lab consumes a FHIR-based API that resolves Patient, Coverage, Claim, Encounter, and related resources against synthetic populations the Data Generator emits (persona DAGs for fictional plans like Pacific Crest, Camas CCO, Timberline).

  • Generator → FHIR surface: DAG output is exposed as FHIR-shaped resources (and connector packs) so the lab SPA can query the same way an integration-minded client would.
  • CIM lab → API: Member Manager, Claim Manager, Referral Manager, and related tools read through that API layer—lists, detail, and cross-links stay consistent with one synthetic source of truth.
  • Same spine as member portals:demo plan brands use the same generator universe (and the same FHIR-backed path for portal claims/coverage flows) so ops lab and member-facing demos tell one story end to end.

A walkthrough can start on a member portal, open a claim that exists in the generator set, then flip to the CIM lab and adjudicate or inspect the same entities—without real payers or real PHI.

Problem

Real CIM is high-stakes: regulated workflows, real members, and release trains that punish large UI swings. That makes it a poor place to answer questions like:

  • Should Claim Manager use a chip-forward header or a dense legacy form?
  • Does a shared search → results → workspace pattern train faster than per-tool chrome?
  • How do redesigned charge grids, referral episodes, or member cards behave with realistic volume?

We needed a faithful recreation where those experiments could run end-to-end— with believable multi-entity data—without touching production.

Role

Principal Product Designer—and builder—of the CIM UX laboratory. I design and implement the lab myself with LLM-assisted coding: tool IA, design system conversion, A/B/C variant strategy, and the full loop from hypothesis → interactive prototype → comparison → recommendation. This is not a paired build with engineering; the lab is my sandbox SPA.

When a paradigm proves usable, I reference the working implementation and document the decisions as a handoff. Production engineering can adopt what they want from my code and patterns—they choose what lands in theirs. Validated UX becomes evidence and material, not a silent force-push into live CIM.

Synthetic data as a design material

Empty states lie. Sparse fixtures hide density bugs. The lab is driven by persona-driven synthetic worlds from the Data Generator—Pacific Crest–style multi-LOB populations, claim lines, referrals/auths, providers, and documents—served through the FHIR API so every experiment faces realistic volume, edge cases, and cross-entity links.

  • Generator → FHIR → lab: DAG outputs map into FHIR resources; the SPA consumes that API for claim worklists, member search, referral episodes, and documents.
  • Demo tenants: multi-carrier context (e.g. Pacific Crest Health Plan) matches how operators switch umbrellas in the real product—without real accounts.
  • Ethics: synthetic-only path; safe for screenshots, stakeholder demos, and external portfolio storytelling.
CIM lab All Tools catalog
Tool registry — the recreation mirrors production catalog structure for honest paradigm tests

A/B variants as a first-class workflow

The lab’s killer feature is route-based variants (/A/tools/…, /B/tools/…, /C/tools/…). Design can ship competing UX paradigms side by side on the same synthetic dataset, then promote a winner to default when evidence is clear— without forking business logic into three codebases.

  • Same data, different chrome: Claim Manager default vs. legacy control (C) show conversion impact with identical claim math and member links.
  • Thin variant layers: shared search, stores, and domain services; variants own presentation and interaction differences.
  • Handoff path: validated paradigms become the lab default; I document decisions and point engineering at the working reference code so they can selectively adopt—not a silent force-push to live CIM.
Claim Manager redesigned variant with search collapsed and charge lines in card view
Claim Manager (redesigned, not legacy) — search collapsed, charge lines in card view, chips header and sticky adjudicate actions
Claim Manager legacy control variant for A/B comparison
Claim Manager — control / legacy form density for direct A/B comparison on the same synthetic claim

Redesigned workflows under test

Claim Manager

Flagship redesign: search institutional and professional claims, open a workspace for charges, member context, COB, notes, and audit. Experiments target scanability (status/type/ICD chips), charge-line status, bulk actions, and keyboard power-user paths—stress-tested with generator-scale claim volume rather than three happy-path rows.

Member Manager

Member find-and-inspect under the shared search band: multi-field search, result cards with enrollment status, plan/PCP, flags, and contact. Redesign work asks whether member cards and rails can stay consistent with claims/referrals so operators relearn less when they switch tools.

Member Manager with synthetic members in results rail
Member Manager — synthetic members (e.g. Drake, Johnson) exercising search, status chips, and result density

Referral Manager

UM-adjacent workflow: reference #, auth #, patient, date range; episodes grouped by member; request type and determination status at a glance. Redesign focuses on episode grouping, status language shared with claims, and list → detail without leaving the shell—again on generator-backed referrals, not empty lists.

Referral Manager detail for synthetic referral RF-91011 with member and care type context
Referral Manager — opened referral RF-91011 (approved spine surgery) with member, care type, and status context

Design system as experiment infrastructure

Converting tools is not a cosmetic reskin—it is the lab’s way of locking shared rules so variant experiments stay fair. Tokens, chips, density, drawers, and footers live in one system; an in-product design system browser documents them for designers and for LLM-assisted scaffolding. That same system is what gets exposed to production CIM: the lab is the place patterns are proven, and the SCSS sheets (tokens, components, density rules) can be shared into the production codebase so eng isn’t re-deriving the design language by hand.

In-lab design system topic browser
Design system in the lab — living docs here; shareable SCSS for production CIM
Document Manager with synthetic imaging files
Document Manager — synthetic clinical artifacts in the same shell as claims and members

How the lab relates to other products

  • Production CIM: still the source of truth for real ops—the lab is not a replacement app. What it does supply is the design system, including shareable SCSS sheets (tokens, components, density) that production CIM can import. Workflow experiments and A/B winners stay reference implementations + documented decisions; eng chooses which patterns—and which stylesheets—to pull into their codebase.
  • Data Generator + FHIR API: exclusive population engine for the lab’s synthetic worlds; FHIR is the contract the CIM lab (and member portals) call for complete end-to-end workflows.
  • Iris and AI Claims: separate Accelerator products—not modules of this recreation—though they share the same fictional plan narratives (e.g. Pacific Crest) and can lean on the same design language where useful.

Outcomes

  • Established a safe, high-fidelity CIM recreation for UX paradigm and workflow experiments.
  • Route-based A/B variants enable side-by-side comparison (e.g. Claim Manager redesign vs. legacy) on identical synthetic data.
  • Design system and workflow patterns proven in code I own, then handed off as reference + documented decisions for engineering to pull from selectively.
  • Closed the empty-fixture gap with a FHIR-based API over Data Generator populations— full multi-entity workflows, not disconnected mocks.
  • Quality gates (lint, vitest, Playwright e2e) keep the laboratory shippable as a real SPA— demos and research sessions stay reliable.

Stack

Vue 3 · Quasar 2 · Pinia · route-based A/B variants · FHIR-based API · Ayin Data Generator personas · Playwright · Vitest · design system docs

← All case studies