Adam Rauch, VP of Product Strategy The Possibilities are Endless: Configuration & Customization of LabKey Server LabKey Server Flexibility

System Scripting & Configuration {;} Reporting

Customizable Custom UI Modules System Configuration

• Site, Project, and Folder Administrators • Organize Site: Projects & Folders – e.g. by lab, funding network, team, therapeutic area, etc. • Security Groups & Permissions • Site/Project Terms of Use • Site Settings • Project & Folder Settings 4/19/18 4

System Configuration (continued)

• User Management – User Properties – Self Sign-Up – Auto-Create Authenticated Users (via LDAP or SSO) • Pipeline – Study / Folder / Specimen Reloads – Email Notifications – File Watchers to Automate Processing & Import • Configure Datasets, Lists, Sample Sets, Assays, etc Customizable UI

• Webparts • Wiki Pages • Secondary Navigation: Tabs, Custom Menus • Custom Branding • Custom CSS 4/19/18 8 Scripting & Reporting

• Use scripts at import time to validate and transform data – Transformation scripts – Trigger scripts

• Build reports to present, aggregate, and visualize data within web UI – Built-in visualizations: scatter, box, line, bar, pie – reports: dynamically execute R code against data stored in LabKey, display generated artifacts (png, pdf, html, excel, etc.) – JavaScript reports: run JavaScript code to generate custom visualizations, provide aggregated reports & dashboard – Attachment & link reports, participant reports, other specialized reports Integrations

• External Data Sources • Laboratory Instruments • Specimen Management Systems (e.g. FreezerPro, LDMS) • EDC (e.g. REDCap, DatStat, Medidata Rave) • Cloud Storage (e.g. Amazon S3) • RStudio • Spotfire via JDBC (18.2)

4/19/18 10 Custom Modules

Custom modules extend the system by providing resources and code that handle specific types of data. Key resources: • SQL Scripts: create and modify custom database schemas • Query, Views, Reports: create file-based SQL queries, reports, views, web parts, and HTML/JavaScript client-side applications • Assay: define new assay types • Extract-Transform-Load: configure data transfer and synchronization between databases or servers • Script Pipeline: run scripts in sequence, including R scripts, JavaScript, , Python, etc. • Java code: implement sophisticated server-side code & custom permissions Example: LabKey Support (LabKey.org)

Custom Menu

Wiki

Frameless Wiki

JS Buttons for Content-Specific Search Client Example: Oxford University

Goal: Collect clinical data, integrate it with existing EPR data and provide that data to both clinicians and researchers in a secure and user friendly environment. Customization: • Developed custom JavaScript module to support data entry in a patient centric flow – Incorporates patient search by name or identifier or date of birth – Allows user to click through each dataset related to a patient – Simple data entry forms to add new patient data to each dataset • Developed LabKey ETL process to automatically import of data from other systems Client Example: Oxford University

Standard LabKey Data Entry Custom Patient-Centric Data Entry Client Example: ITN TrialShare Client Example: Argos Client Example: CAVD DataSpace Implementation Options

LabKey Custom Do-it-Yourself Premium Edition Development Services

Utilize LabKey Receive training and Leverage LabKey documentation to guidance from LabKey development experts to guide in-house experts to guide in- extend the system and development house development build custom solutions Questions?