Skip to content

Pages Reference

This document describes the purpose and function of each page in the Metricis portals.


Researcher Portal (portal/)

Global Pages

Page File Purpose
Login Login.tsx Authentication page for researcher credentials
Welcome Welcome.tsx Global dashboard landing after login
Studies Studies.tsx Studies work queue. Lists all studies with stats, allows creating new studies with classification wizard
Study Team StudyTeam.tsx Study membership + roles (DAG site assignment)
Reports Library ReportsLibrary.tsx Saved report definitions (M39)
Report Builder ReportBuilder.tsx Interactive report authoring
Data Exports DataExports.tsx Governed export definitions + async jobs (M58)
Snapshots Snapshots.tsx Materialized data cuts for interim/DSMB (M58 P7)
API Tokens ApiTokens.tsx Scoped mtk_ token management (M58 P5)
Queries Dashboard QueriesDashboard.tsx Cross-study data query worklist
Assessment Queue AssessmentQueue.tsx Overdue/pending assessment triage
Assessment Sessions AssessmentSessions.tsx Session listing + drill-down
Monitor Compliance MonitorComplianceDashboard.tsx Monitor persona compliance dashboard (M54 P4)
Account Sessions AccountSessions.tsx The signed-in user's active sessions

Study-Scoped Pages

Pages accessible when a study is selected.

Study Configuration

Page File Purpose
Study Detail StudyDetail.tsx View/edit study properties, manage batteries, consent forms, sites, arms, and rare pediatric configuration
Study Overview StudyOverview.tsx Dashboard view for a specific study showing key metrics, recent activity, and quick links
Study Events setup/StudySetupEvents.tsx Manage visit windows (timepoints) within a study. Events define the assessment timeline for participants. On live studies (M119) schedule changes require a recorded reason (banner + reason field in the modal, ReasonDialog on delete); window-narrowing over scheduled visits is blocked with an emergency-override path
Study Assistant StudyAssistant.tsx AI-powered configuration assistance. Document upload, protocol ingestion, battery config via ChangeSet review

Participants & Sessions

Page File Purpose
Participants Participants.tsx List, create, and manage study participants. Supports REDCap sync for managed studies
Participant Detail (M114: + Schedule & Data tab — expected events × forms/batteries matrix with derived completion states + unscheduled-input bucket) ParticipantDetail.tsx Comprehensive view of a single participant: demographics, sessions, scheduled visits, phenotype timeline
Assessment Sessions AssessmentSessions.tsx Monitor assessment session completion status, view details, track progress by participant
Assessment Queue AssessmentQueue.tsx EDC integration queue showing queued, in-progress, and completed assessments. Actions for delivery and reconciliation
Data Entry DataEntry.tsx CRF/form completion interface using the native FormSpec forms engine. Shows pending forms by participant/visit

Scheduling

Page File Purpose
Schedules Schedules.tsx Manage visit windows, view upcoming/overdue scheduled visits, configure reminders

Analytics & Export

Page File Purpose
Reports Reports.tsx Study analytics and reporting with charts (enrollment trends, completion rates, site performance)
Export Export.tsx Download study data in various formats (CSV, JSON). Includes SDTM export and validation functionality
Monitor Compliance Dashboard MonitorComplianceDashboard.tsx Track protocol amendment compliance: consent re-execution status, version distribution, deviations
Page File Purpose
eConsent Designer EConsentDesigner.tsx Create/edit consent versions with sections and configure Part 11-supporting signature requirements (participant, LAR, witness, investigator)

Metadata Versioning

Page File Purpose
Metadata Versions MetadataVersions.tsx Manage study metadata versions for amendment tracking and audit trail. When the study opts into per-site form-version authorization (config.constraints.site_version_authorization), also hosts the sites × forms REB authorization matrix (SiteFormAuthorizationMatrix, M117) — authorize/supersede/revoke the version each site enters data on

Forms Module (forms/)

A dedicated module for form/CRF management with its own layout and navigation.

Page File Purpose
Form Library FormLibrary.tsx Browse template library, copy templates to study, native FormSpec preview
FormStudio studio/FormStudio.tsx Visual FormSpec builder (M29): structure rail, type-aware property panel, live lint + engine-driven preview, JSON source view, draft save/release. Routes: forms/new, forms/:formId/design
FormSpec Review FormSpecReview.tsx Review AI-drafted form proposals (provenance, lint findings, live preview); accepted items land as drafts editable in FormStudio
Form Entry FormEntry.tsx Staff data entry on the native renderer with workflow actions (start → lock)
Form Preview FormPreview.tsx Preview a form's appearance and behavior (responses not saved)
Validation Rules ValidationRules.tsx Manage study-scoped validation rules

Admin Pages (admin/)

Global administration pages not scoped to a specific study.

Page File Purpose
Module Registry ModuleRegistry.tsx Browse all available assessment modules (cognitive tasks, questionnaires) with metadata
Batteries Batteries.tsx List and manage assessment batteries across studies. On live studies the raw status select is replaced by an Archive action — delivery changes go through battery versions (M118)
Battery Builder BatteryBuilder.tsx Drag-and-drop builder for composing batteries from modules. Hosts the BatteryVersionsPanel (M118): draft → approve → release battery versions with frozen module snapshots, breaking-change labelling, and an editability banner when the study is live
REDCap Config REDCapConfig.tsx Configure REDCap integration: API tokens, field mappings per battery, webhooks
Users Users.tsx User management for portal access
User Detail UserDetail.tsx View/edit individual user details and permissions
Audit Trail AuditTrail.tsx Searchable view of all audit events for compliance monitoring. Export functionality for regulatory inspections
Account Sessions AccountSessions.tsx View and manage active user sessions

Registry Pages

For patient registry management (separate from clinical studies).

Page File Purpose
Registries Registries.tsx List all patient registries with create functionality (optional purpose-classification seed at creation, M112). Types: observational, trial-adjacent, platform, patient-initiated
Registry Overview RegistryOverview.tsx Operational glance for a specific registry: stats, recent participants, purpose badges, needs-attention card (M113), registry forms + modules/instruments cards (M115), setup checklist. Configuration lives in Registry Settings (M112)
Registry Settings registry-settings/RegistrySettings*.tsx Settings namespace (/registries/:id/settings/*, M112): profile + purpose classification, reporting & adherence (delivery cadence + staff flagging policy), enrollment, consent, participant portal, data-management plan (custodian/retention + 10 documented sections, server-stamped)
Registry Participants RegistryParticipants.tsx Manage registry members
Registry Participant Detail RegistryParticipantDetail.tsx Individual registry participant profile — Overview / Data & Adherence (M113: per-instrument cadence heatmaps, staff-only follow-up flags, read-only response viewer, bridged cognitive sessions) / Phenotypes / Consent / Biospecimens (M57 links/collection-context/derived-results/proposals + M90 live bio inventory & consent-gated distribution-request workflow via BioSamplesPanel) tabs
Cohort Detail CohortDetail.tsx View/manage a specific cohort within a registry
Registry Analytics RegistryAnalytics.tsx Analytics and reporting for registry data
Registry Form Preview forms/RegistryFormPreview.tsx Read-only render of a registry-owned form's latest version (M115); FormStudio serves registry scope via registries/:id/forms/new + /design routes
Drafted Changes Review forms/DraftChangesReview.tsx REDCap draft-mode analogue (M116), both scopes (…/forms/:formId/review-changes): classified change table (safe/caution/critical/blocked + remediation), verdict banner, four-eyes approve, release with recorded reason + optional Part 11 e-sign
Form Change History forms/FormChangeHistory.tsx Per-form change ledger (M116), both scopes (…/forms/:formId/changes): released versions with the frozen classification/reason/impact/DQ from each release's hash-chained audit event

Patient Portal (patient-portal/)

Mobile-first interface for patients and caregivers.

Authentication

Page File Purpose
Login Login.tsx Patient authentication (magic link entry)
Verify Link VerifyLink.tsx Magic link verification and session establishment

Main Pages

Page File Purpose
Home Home.tsx Landing page showing pending tasks, consent status, and quick actions
Tasks Tasks.tsx List of all assigned tasks (assessments, forms, etc.)
Task Detail TaskDetail.tsx View details of a specific task and launch it
Assessments Assessments.tsx View pending and completed cognitive assessments
Assessment Landing AssessmentLanding.tsx Pre-assessment instructions and launch screen
Page File Purpose
Consent Consent.tsx View consent documents and status
Consent Sign ConsentSign.tsx Sign consent forms with signature capture

Other

Page File Purpose
Schedule Schedule.tsx View upcoming visits and assessment schedule; mode-aware — Metricis-managed (EDC) studies show StudyEventInstance visits with repeating-event occurrences labeled "(k/N)"
Survey Runner SurveyRunner.tsx Token-authenticated native FormSpec runner (public route; offline-first, M40/M63)
Diary Diary.tsx Registry check-ins (DiaryRunner, M45): /diary = daily; /diary/weekly = Weekly Capacity, period-keyed to the local ISO week's Monday (M78). Home lists due check-ins from /portal/diary/due
JoinRegistry JoinRegistry.tsx Public enrollment funnel entry /join/{registryCode} (M79/FD-1) — enumeration-safe interest capture; emails a 72h continuation link
Resources Resources.tsx Registry resources /resources (M84/FD-5) — staff-curated education content; route/nav appear only when the protocol enables the surface; consent-gated server-side
Onboarding Onboarding.tsx Registry onboarding wizard /onboarding (M81/FD-3) — derived resumable steps: consent → baselines (FormRunner) → device prompt → first check-in
RegistryConsent RegistryConsent.tsx Registry consent status /consent (M80/FD-2) — current consent + purposes, sign/assent CTAs, staff-mediated withdrawal statement
RegistryConsentSign RegistryConsentSign.tsx Registry consent wizard /consent/sign (M80) — read → purpose choices → drawn/typed signature → confirm; actor + assent ladder enforced server-side
RegistryAssent RegistryAssent.tsx Child assent capture /consent/assent (M80) — second signature on the guardian-signed consent
Transition Transition.tsx Young-adult transition to adulthood /transition (M56) — at the age of majority, ownership transfers from caregiver to participant: collected-data summary → purpose choices (narrowing) → participant-actor sign (new grant supersedes the guardian consent); decline is recorded for staff follow-up (withdrawal stays staff-mediated). Capture/research use are held server-side between majority and the new grant. Coordinator worklist: RegistryReconsentCard on the registry overview
StudyInterest StudyInterest.tsx Public study interest capture /interest/{studyCode} (M83/FD-7) — contact capture for the coordinator queue; not self-enrollment
JoinContinue JoinContinue.tsx Public funnel continuation /join/continue?token=… (M79) — eligibility screener (FormRunner) → review → submit; creates a login-blocked pending enrollment awaiting coordinator approval
PublicSite PublicSite.tsx Public information sites /registry/{code} + /study/{code} (M87/FD-8) — staff-published per-registry/per-study content (EN/FR, EN fallback); join/interest CTAs derived server-side from the live FD-1/FD-7 knobs; unknown and unpublished codes 404 identically. Authored via the researcher-portal PublicWebsiteCard (registry + study overviews, audited; live-preview markdown editor + theme/logo/hero since M89). The SEO-canonical rendering is the edge renderer (workers/public-sites/, M89): server-rendered HTML with OG/hreflang/sitemap, per-registry custom-domain-ready; the SPA page emits rel=canonical to it when VITE_PUBLIC_SITE_BASE is set
Dashboard Dashboard.tsx Participant/caregiver trends — non-diagnostic posture (M49)
Summary Summary.tsx Post-assessment summary and completion confirmation
Settings Settings.tsx Account settings, language preferences, notification preferences
Contact Contact.tsx Contact information for study team support

Route Patterns

Researcher Portal

/                          → Studies (dashboard)
/login                     → Login
/studies/:studyId          → StudyDetail
/studies/:studyId/overview → StudyOverview
/studies/:studyId/events   → StudySetupEvents
/studies/:studyId/participants → Participants
/studies/:studyId/participants/:participantId → ParticipantDetail
/studies/:studyId/sessions → AssessmentSessions
/studies/:studyId/reports  → Reports
/studies/:studyId/export   → Export
/forms/:studyId/events     → EventFormSchedule (forms module)
/forms/:studyId/library    → FormLibrary (forms module)
/admin/modules             → ModuleRegistry
/admin/batteries           → Batteries
/admin/audit               → AuditTrail
/registries                → Registries

Patient Portal

/                          → Home
/login                     → Login
/tasks                     → Tasks
/tasks/:taskId             → TaskDetail
/assessments               → Assessments
/consent                   → Consent
/schedule                  → Schedule
/settings                  → Settings