Syncfusion Feedback

React Scheduler - Evaluation Guide

Evaluate the Syncfusion React Scheduler for Enterprise Adoption

The Syncfusion React Scheduler support appointment booking, resource planning, workforce shifts, field-service dispatch, asset utilization, project milestones, and large-scale calendar coordination. This guide organizes the supplied technical evidence into a practical evaluation sequence while retaining the detailed compatibility conditions, integration tables, performance behavior, security boundaries, and references.

Start with the visible framework, then expand only the technical topics needed for the scheduling application under review.

Try Interactive Live Demo

Quick evaluation framework

Evaluate these areas in the following order so that any compatibility issues or security constraints are identified early, before investing time in advanced customization and testing.

Order Evaluation area What to assess How to verify Decision impact
1. Runtime fit Framework, React version, SSR model, browsers, and web-only boundary Match the target environment to the published compatibility evidence and test the real route. Unsupported runtime needs can stop the evaluation early.
2. Build and application fit Packages, modules, state, theming, micro-frontends, CI/CD, and tests Install in the real repository and run the existing engineering pipeline. Reveals platform integration effort.
3. Data and workflow fit Adaptors, APIs, external calendars, authentication, recurrence, editing, and extensions Connect a production-shaped API and implement a representative scheduling workflow. Shows whether the Scheduler fits service and business boundaries.
4. Performance fit Events, resources, timeline span, remote loading, recurrence, real-time updates, and mobile Run repeatable workloads on target hardware and record results. Determines scalability for the intended schedule.
5. Security and procurement fit Responsibility boundaries, data flow, CSP, export, compliance, and support evidence Validate runtime behavior with DevTools and review current procurement documents. Clarifies what the component provides and what the application must enforce.
6. Final decision Conditions, limitations, evidence, ownership, and unresolved risks Record pass, conditional pass, or fail for every mandatory area. Prevents broad feature coverage from hiding a critical mismatch.

1

Architecture compatibility

Evaluate how well the Scheduler integrates with the application’s existing architecture, including rendering patterns, build processes, styling approach, browser support, and testing ecosystem. This helps ensure the component can be adopted without requiring major architectural changes.

Framework and runtime compatibility

Verify that the Scheduler supports the application’s framework, React version, runtime environment, and rendering model. This ensures the component functions correctly within the existing technology stack and deployment environment.

Framework and environment support

Confirm that your target deployment environment is supported before evaluating advanced scheduling features. The Scheduler is designed for modern React-based web applications and integrates as a standard React component across supported frameworks, build tools, rendering models, and deployment environments, providing a consistent integration experience.

Deployment Environment Coverage
React 18/19 SPA Supported and works with standard configuration.
Next.js App Router Supported. Requires client component usage with documented guidance.
Next.js Pages Router Fully supported. Stable on all Pages Router versions.
Vite SPA Fully supported. Integrates as a standard package dependency.
Remix Fully supported. Client-side hydration behavior is documented and reliable.
Gatsby SSG Fully supported. Has static generation and hydrates correctly at runtime.
Electron Supported. Runs inside Electron's renderer process as a standard React component.
Micro-Frontend (Module Federation) Supported. Declare as a shared singleton at the shell level; one version loads across all teams.
Micro-Frontend (Single-SPA) Supported. Runs as a standard, client-rendered React component inside Single-SPA.
Preact Fully supported. Scheduler works via Preact’s React‑compat compatibility layer.

Use the published system requirements as the versioned baseline.

React version compatibility

Match the application React version to the minimum Syncfusion version and review release history before changing either dependency.

React Version Syncfusion Minimum Version Approximate Release Year Coverage
React 16 Syncfusion v16 2018 Fully supported and documented in the current release.
React 17 Syncfusion v18 2020 Fully supported and documented in the current release.
React 18 Syncfusion v20 2022 Fully supported and documented in the current release.
React 19 Syncfusion v29 2024 Confirmed compatible in the latest release notes.
React Strict Mode No minimum version constraint. Fully compatible. No double-invoke or duplicate state mutation issues in development Strict Mode.
Organization-pinned React version N/A No peer dependency conflicts. The Scheduler consumes the host application's React version.
Future React major version planning Reviewable in release history. Historical adoption pace across React 17, 18, and 19 provides evidence-based upgrade planning.

Keep all @syncfusion packages at or above the mapped minimum version. The supplied source describes historical adoption of React 17, 18, and 19; verify future versions in current release documentation.

SSR and server component integration

The Scheduler uses the documented client-component boundary in Next.js App Router and can initialize from server-prepared data. Validate the exact rendering and data-loading pattern used by the target route.

React Data Scheduler SSR and Server Component Integration.

  • Data-ready initialization: prepare only the required Scheduler data for the initial render and initialize the component after that data is ready.
  • Hydration boundary: place the Scheduler within a client component to avoid App Router hydration mismatches.
  • Streaming SSR: render the Scheduler inside a Suspense boundary so surrounding page content can stream while Scheduler data is fetched and initialized.
  • Incremental Static Regeneration: the Scheduler hydrates on ISR-regenerated pages without Scheduler-specific handling.
  • Edge runtime: no Node.js-only dependency is identified as blocking Edge deployment.

Browser and runtime support

Use the versioned browser compatibility matrix for procurement, upgrade, and release planning. It documents support for all modern browsers, including accessibility, high-contrast rendering, and known legacy browser limitations.

Browser Runtime Coverage
Chrome (latest) Fully supported
Firefox (latest) Fully supported
Safari (latest) Fully supported
Microsoft Edge (latest) Fully supported
Opera (latest) Fully supported
Internet Explorer 11+ (EOL — June 2022) Supported when the ES6 Promise polyfill is added, as noted in the documentation.

Scheduler date and time behavior relies on browser Date and locale handling. Store event data in UTC and convert it in the application when consistent daylight-saving behavior across regions is required.


Build, package, and module compatibility

Confirm that the Scheduler aligns with the organization’s existing build processes, package management strategy, and modular delivery architecture without requiring proprietary tooling.

Build compatibility

The Scheduler installs as a standard npm package and works with the existing build setup without additional configuration or proprietary plugins. Only the feature modules the application imports are included in the production bundle; everything else is dropped at build time.

Environment/Toolchain Support
Webpack Fully supported. Works as a standard npm/ESM React package with no custom plugins required.
Vite Fully supported. ESM-compatible, integrates without configuration.
Turbopack Supported via ESM export. Core rendering and data binding validated by Syncfusion under Turbopack's production pipeline. No Turbopack-specific plugin required. Teams should verify their own CSS strategy and SSR/Suspense configuration.
Nx / Turborepo (Monorepo) Fully supported. Standard npm dependency declaration; no custom executors, generators, or monorepo-specific configuration required.
TypeScript Strict Mode ("strict": true) Fully compatible. All public APIs, props, and event signatures are fully typed; no @ts-ignore suppressions required for standard usage.
Next.js (App & Pages Router) Supported. Client-component usage where needed.
Create React App (legacy — deprecated) Supported for existing projects. For new projects or migrations, Vite is the recommended replacement. The Scheduler's Vite integration guide applies directly with no scheduler-level changes required.

Package distribution and module Support

Confirm that the published module format is compatible with the application’s build and testing toolchain. Inspect the package structure before adoption to verify the available modules and distribution contents.

Module Format Support Notes
ESM Fully supported Ships as the primary format (dist/es6). Used by default in Vite, Next.js, and Webpack 5 builds.
CJS (CommonJS) Supported Compatible with legacy Node toolchains, Jest, and CommonJS-based module loaders such as RequireJS and SystemJS.
UMD Fully supported Available as dist/[package-name].umd.min.js. Loadable in browsers via script tag, AMD, and CommonJS loaders.

Inspect the published package contents on the npm package page.

Micro-frontend and module federation compatibility

In a micro -front-end architecture, loading the same component library multiple times across independent applications causes bundle duplication and version conflicts. The Scheduler supports Webpack Module Federation and single-SPA, with a shared singleton configuration that ensures a single-instance loads across all micro-apps.

Micro-Frontend Scenario Coverage
Multiple schedulers on the same page Each instance maintains independent state with no cross-instance interference.
Module Federation shell (Webpack) Shared dependency configuration is documented. Prevents bundle duplication and version conflicts across micro-apps.
Vite Module Federation Supported via @originjs/vite-plugin-federation — shared singleton configuration applies identically to Webpack MF.
Lazy-loaded route (React.lazy) Compatible. No special configuration required.

Application architecture integration

Evaluate how the Scheduler fits within existing application architecture, respecting application-owned state, established data-flow patterns, and organizational design-system standards without requiring architectural refactoring.

State management neutrality

The Scheduler does not introduce a global store, context provider, or parallel state layer. It accepts data through props and emits events, allowing Redux, Zustand, TanStack Query, MobX, Jotai, Recoil, and React Context to remain under application ownership.

Theming and design system integration

Evaluate branding using the supported themes, design tokens, typography, density, responsive behavior, and dark mode. Theme Studio provides the supported workflow for creating and exporting custom themes without modifying source files.

CSS Strategy Coverage
CSS custom properties / design tokens Supported. The Scheduler exposes CSS variables for design token overrides.
Sass / SCSS variable override Supported. Themes are built in SCSS and customizable through Theme Studio.
CSS Modules Supported. Preventing global style conflicts.
Runtime multitenant theme switching Partially supported, CSS file or class swaps work for basic scenarios; full brand customization requires Theme Studio.
Dark mode Built-in dark variants for all themes with no custom CSS required.
Theme Studio Supported. Exports SCSS/CSS without touching component source code.
Brand / design system alignment Supported. CSS variables and SCSS tokens cover typography, color, and spacing alignment.

The documentation lists 22 built-in themes and the Theme Studio export process.


CI/CD and testing compatibility

Confirm that the Scheduler can be built, tested, and deployed through existing engineering workflows without requiring specialized tooling or infrastructure.

CI/CD pipeline compatibility

Scheduler-dependent features can be included in CI/CD pipelines using the same test infrastructure the rest of the application already uses.

Testing framework compatibility

The Scheduler works with all standard React testing tools without custom polyfills or separate test environments.

Testing Tool Compatibility Notes
Jest Fully supported Blog reference
Vitest Fully supported Works with jsdom and happy-dom environments
React Testing Library Fully supported Standard DOM queries work. No vendor-specific selectors needed.
Cypress Fully supported E2E tests run against Scheduler interactions without custom configuration.
Playwright Fully supported Scheduler elements accessible via standard locators.
Storybook Supported Scheduler renders correctly for visual regression testing.

Try live demo and navigate to the Testing tab to explore testing approaches and validate implementations using code examples and test cases.


2

Integration and extensibility

Connect the Scheduler to existing data sources, authentication systems, state management solutions, and design systems. Assess extensibility through APIs, events, templates, and customization points while verifying compatibility with existing backend integrations, authorization requirements, and multi-instance deployments. Evaluate integration with external calendar services for importing, exporting, and synchronizing calendar events.

Data and back-end integration

Verify how the Scheduler integrates with application services and authenticated backend APIs that use the organization’s existing databases and ORMs.

Data source integration

The data manager and adaptor layer translates date-range loading, create, update, delete, drag-and-drop, resize, and recurrence operations into the back-end contract, eliminating manual request and response handling on the front end. Select the adaptor that matches the existing API rather than reshaping the service around the Scheduler.

Adaptor When to use Enterprise benefit
URL adaptor Back end exposes standard REST APIs. Works with any back-end technology; compatible with microservice and cloud-native architectures.
ODataV4 adaptor Back end provides services compliant with OData v4. Standardized query protocol for filtering, which reduces the need for a custom API surface and improves consistency across services.
Web API adaptor Back end is built on ASP.NET web API. Provides optimized request and response handling for .NET enterprise applications and offers native alignment with the Microsoft ecosystem.
GraphQL adaptor Back end exposes a GraphQL endpoint—Apollo, Node.js, Hot Chocolate. Fetches only required scheduler event fields, reducing payload size in distributed and microservice architectures.
Web Method adaptor Back end uses legacy ASP.NET Web Services (ASMX). Modernizes the UI layer without replacing existing back-end systems and preserves investment in legacy enterprise infrastructure.
RemoteSave adaptor Data is managed client-side with server-side persistence only. Reduces API call volume; suitable for batch event updates and interaction heavy scheduling scenarios such as drag and drop and event resizing.
Custom adaptor API follows a non-standard or proprietary format. Full control over request and response shaping; allows extending any built-in adaptor without building from scratch.

A custom adaptor extends an existing adaptor to intercept and reshape requests or responses for proprietary envelopes, custom field names, special headers, and token injection without rebuilding the integration from scratch.

Try live demo and navigate to the Integration tab, then select the Adaptors chip to explore available data adaptors and their configuration patterns.

Back-end framework coverage

The Scheduler communicates through APIs, so framework fit depends on endpoint shape rather than server-side rendering technology.

Back end Possible adaptors Reason
Django REST framework URL adaptor, Custom binding Django REST exposes standard REST endpoints, so the URL adaptor maps directly, and the custom binding handles non-standard field formats or auth schemes.
Express and Node.js URL adaptor, GraphQL adaptor, Custom binding Support both REST and GraphQL, and the adaptor selection depends on the endpoint type that the service exposes.
FastAPI URL adaptor, Custom binding FastAPI exposes standard REST endpoints; the custom binding covers non-default response envelope formats.
Flask and FlaskAPI URL adaptor, Custom binding REST-based by default; the custom binding handles lightweight or nonstandard API conventions.
Next.js API routes URL adaptor, Custom binding API routes behave as REST endpoints, so the URL adaptor applies directly.
GraphQL in Node.js GraphQL adaptor, Custom adaptor The GraphQL adaptor formats queries for Node.js GraphQL servers; the custom adaptor handles schema variations.
GraphQL in Apollo GraphQL adaptor, Custom adaptor The GraphQL adaptor formats queries for Apollo GraphQL servers; the custom adaptor handles schema variations.
GraphQL in Hot Chocolate GraphQL adaptor, Custom adaptor The .NET GraphQL implementations integrate via GraphQL adaptor, while the custom adaptor covers schema-specific deviations.
ASP.NET Core Web API Web API adaptor, URL adaptor The Web API adaptor is optimized for .NET response conventions; the URL adaptor applies where REST-only patterns are used.
Legacy ASMX Web method adaptor, Custom adaptor The Web Method adaptor calls WebMethod endpoints in legacy ASP.NET services without replacing the back end.

Try live demo and navigate to the Integration tab, then select the Backends chip to explore Scheduler integration with various backend technologies.

Database integration

The Scheduler does not connect to databases from the client side. All data access goes through back-end API endpoints.

Database Possible adaptors
MySQL URL adaptor, Custom adaptor
PostgreSQL URL adaptor, Custom adaptor
SQL Server URL adaptor, Web API adaptor, Custom adaptor
MongoDB URL adaptor, Custom adaptor

Try live demo and navigate to the Integration tab, then select the Databases chip to learn how to connect the Scheduler to databases such as SQL Server, MySQL, PostgreSQL, and MongoDB through back-end APIs.

External calendar services integration

The Scheduler can integrate with external calendar services through their APIs, allowing existing calendar events to appear in the Scheduler and changes made in the Scheduler to synchronize with the external calendar. This allows users to view and manage all events from one place, without switching between systems.

External calendar service Possible adaptors Reason
Google Calendar API URL adaptor, Web API adaptor, Custom adaptor Google Calendar exposes a REST API returning JSON events. The Scheduler can read it via the URL/WebApi adaptor, but requires simple field mapping. The custom adaptor only needed if extra transformations are required.
Outlook Calendar (Microsoft Graph API) URL Adaptor, Custom Adaptor Outlook events come through Microsoft Graph in JSON format after MSAL login. The Scheduler consumes it through the URL adaptor; use the custom adaptor only if event fields need mapping.

Try live demo and navigate to the Integration tab, then select the External Calendars chip to explore Google Calendar and Outlook integration patterns, authentication setup, and event synchronization behavior.

ORM compatibility

The Scheduler has no direct ORM dependency. Any server-side ORM can be used when its API endpoint meets the adaptor request and response contract. Verified examples include Entity Framework Core, Hibernate/JPA, Django ORM, SQLAlchemy, Sequelize, Prisma, Laravel Eloquent, Dapper, ADO.NET, raw SQL, and stored procedures.

Authentication passthrough

Authentication headers, including JWT Bearer tokens, are configured through the application data layer and automatically applied to all Scheduler requests, including event loading, create, update, delete, drag-and-drop, resize, and recurrence operations.

Auth pattern Support
JWT bearer token Configured on the data manager and attached to every request.
OAuth 2.0 (PKCE and client credentials) Token supplied by the application authentication layer and injected via the data manager headers.
Token refresh Handled via the data manager request interceptor.
Mutual TLS (mTLS) Configured at the HTTP transport layer, which is below the data manager boundary.
Auth failure (401/403) Surfaces via built-in failure event and the retry, redirect, and notification logic remain in the application layer.

Refer to our documentation on custom headers and data-manager middleware logic.


API stability and extensibility

The Scheduler supports customization through documented extension points, React templates, typed events, and methods, enabling flexible and maintainable implementations.

Versioning and API stability

The Scheduler follows semantic versioning. Public properties, events, methods, and template APIs are part of the stable public API surface. Use the migration guide and release notes to plan and validate upgrades.

Change type Policy
Breaking changes Introduced only in major versions; not included in minor or patch releases.
New properties, events, and methods Added in minor versions; backward-compatible.
Deprecations Deprecated members remain functional through the deprecation window and are flagged with TypeScript @deprecated annotations.
Major version upgrades Accompanied by a migration guide with before and after examples scoped to the published breaking change list.

Extensibility model

The Scheduler exposes editor, quick-info, tooltip, cell, header, resource, event, time-axis, and toolbar extension points through documented public APIs, ensuring stable customizations across version upgrades. Any unsafe raw HTML in custom templates remains the application’s responsibility.

Pop-up and interaction layer

These are all related to quick pop-ups, editor dialogs, and user interactions.

Extension point What it replaces Common use
Editor template Default event editor pop-up Replaces the default editor with a custom event creation and editing experience.
Editor header template Default editor pop-up header Customizes the title and context of the editor dialog.
Editor footer template Default editor pop-up footer Controls the action area and workflow triggers in the editor.
Quick info templates (header, content and footer) Default quick pop-up Customizes lightweight interaction layer for preview and quick actions.
Tooltip template Default event tooltip Defines contextual information display on hover interaction.
Resource header tooltip template No default tooltip Adds resource-specific details to resource headers where none exist by default.

Month view and cell-level customization

Focused on date cells, month layout, and calendar table behavior.

Extension point What it replaces Common use
Cell template Default work cells and time cells Customizes cell structure and data representation within the schedule table.
Cell header template Default month cell header Customizes header section within cells for additional context.
Month header template Default month grouping (year view) Customizes month-level grouping and representation.
Day header template Default day header (year view) Controls representation of day-level headers in applicable views.
Date header template Default date header text Controls how date headers are presented across views.

Resource and grouping layer

Handles resource-based scheduling (rooms, teams, assets).

Extension point What it replaces Common use
Resource header template Default resource header UI Controls how resource metadata and grouping are displayed.
Header indent template Default empty indent space Utilizes layout space to enable additional contextual elements or branding components.

Event rendering layer

Controls how events (appointments) appear visually.

Extension point What it replaces Common use
Event template Default event block UI Overrides event rendering to align with business-specific visualization and logic.

Time axis and layout layer

Controls time scale and structural layout of the scheduler.

Extension point What it replaces Common use
TimeScale template (major and minor slot template) Default time slots Defines how time intervals are structured and displayed.
Header rows template Default header rows Enables multilevel or grouped header configurations.
Date range template Default header date range Custom date range display in the header.

Global customization

Applies across all views and layers.

Extension point What it replaces Common use
Header template Default scheduler header toolbar Replaces header with custom controls, navigation, and contextual actions.

Try live demo and navigate to the Integration tab, then select the Extensibility chip to access related resources and examples.

Programmatic API — events and methods

The typed Event and Method APIs provide complete control before, during, and after Scheduler actions. All APIs are fully typed and documented in a versioned reference. Extensive properties support Scheduler customization, and the feature-rich interactive sample helps evaluate and explore its capabilities.

Capability Architectural implication
Pre-execution interception Any Scheduler action can be intercepted and cancelled by the application before it executes.
Programmatic event operations (CRUD + recurrence) Events, including recurring ones and exceptions, can be fully created, updated, or deleted through code without UI interaction.
Server-side query delegation Fetching, filtering, and CRUD can be delegated to the back end, and this is compatible with any server-side query layer.
Programmatic query refinement Filter, date change, and view switch operations are applicable client-side or invocable programmatically against back-end APIs.
External control of calendar state Application can control date, view, and navigation programmatically from external components.
Visible range and context awareness Current visible date range and view context can be accessed to drive optimized back-end queries and UI synchronization.
UI interaction control (editor and pop-ups) Editor dialogs and quick popups can be opened, customized, or suppressed programmatically to support custom workflows.
Selection and interaction state management Selected cells, events, and time ranges can be read and controlled programmatically for cross-component coordination.
Scroll and focus control The Scheduler can scroll to specific time slots or resources, improving usability in large datasets.
Resource state control Resource groups can be expanded or collapsed programmatically in resource-based scheduling scenarios.
Time and timezone configuration Working hours, time slots, and timezone handling can be dynamically adjusted globally or per event.
Programmatic data extraction Selected events are copyable to the clipboard programmatically.
Performance-aware rendering Only visible data is rendered, supporting large datasets with efficient virtualization.
User preference persistence View type, selected date, and scroll position values can be stored and restored for consistent user experience.
Data export and integration hooks Scheduler data can be extracted, exported (iCal, Excel), printed programmatically, or integrated with external systems.
Accessibility and global readiness Keyboard navigation, localization, RTL, and accessibility behaviors are configurable without custom implementation.
Viewport-responsive layout The Scheduler layout and dialogs adapt to mobile and tablet viewports at the configuration level, and no separate responsive implementation is required.
Audit trail support Edit events carry old and new values with full cell context and are directly mappable to a compliance logging pipeline without additional middleware.
Instance isolation Each Scheduler instance exposes an independent API surface, and no state is shared among multiple Scheduler instances on the same page.

State management integration

The Scheduler integrates with application-managed state, allowing teams to use their existing React state management approach.

State management compatibility

The Scheduler accepts data through props and returns user interactions through events. It does not introduce a global store, context provider, or parallel data layer, allowing existing stores and query layers to remain authoritative while the application handles dispatching, refetching, persisting, and reconciling changes.

React Scheduler State Management Compatibility.

Compatibility matrix

Validate the selected state library using the application’s real update and error-handling patterns.

State library How the Scheduler connects
Redux and Redux Toolkit Store value passed as a data source, and the dispatch is called inside Scheduler event handlers.
Zustand Zustand store slice passed as data source, and the Scheduler consumes, never writes to the store.
TanStack Query and RTK Query Query result passed as data source, and the Scheduler triggers re-fetch via built-in change event.
React Context Context value passed as a data source, and no provider wrapping is required inside the Scheduler.
MobX Observable passed as a data source, and the Scheduler rerenders on observable change.
Jotai and Recoil Atom value passed as data source, following standard React data flow.

Try live demo and navigate to the State Management tab to explore different integration patterns and verify data flow in real time.


Multi-Scheduler and micro-frontend integration

The Scheduler supports deployment in applications that use multiple Scheduler instances or micro-frontend architectures, enabling flexible composition across modules and application boundaries.

Multi-Scheduler runtime behavior

Multiple Scheduler instances do not share configuration, data, events, adaptors, or lifecycle state unless the application explicitly coordinates them.

Runtime concern How the Scheduler behaves
State isolation between instances Each Scheduler instance maintains an independent configuration, data source, and lifecycle. Actions in one Scheduler do not affect another.
Cross-Scheduler coordination Coordination between Scheduler instances is handled entirely through the application's state layer. The Scheduler provides the event and method surface; the application owns the coordination logic.
Multi-Scheduler dashboard composition Multiple Scheduler instances run simultaneously on the same page. Each renders and scrolls independently with no cross-instance event leakage.

Micro-frontend runtime behavior

At runtime, the Scheduler remains within its micro-frontend module boundary. Lazy loading and independent module lifecycles are supported, while version conflict policy remains a shell concern.

Runtime concern How the Scheduler behaves
Micro-frontend module boundaries The Scheduler operates as a self-contained React component. It can be added, updated, or removed from a module without affecting other modules in the shell.
Lazy-load compatibility The Scheduler loads inside React.lazy and Suspense boundaries without hydration errors. It is compatible with on-demand, module-based loading to enable Scheduler features in MFE shells.
Independent upgrade path Each module can upgrade its Scheduler version independently when the shell enforces a shared singleton. Version conflicts are resolved at the shell level, not at the module level.

Review the micro-frontend architecture article for the referenced architecture pattern.


3

Performance and scalability

Evaluate performance optimization mechanisms, including virtual scrolling, lazy loading, resource virtualization, server-side data operations, and efficient event and DOM rendering. Validate scalability across large event datasets, multiple resources, concurrent Scheduler instances, real-time updates, recurring events, grouped resource views, extended date ranges, and deployment constraints to ensure the Scheduler meets workload requirements.

Rendering and data processing performance

Evaluate how rendering and data processing capabilities scale as scheduling complexity and dataset size increase.

Rendering performance modes

Choose a rendering and data-loading strategy based on resource count, date range, event volume, and data source characteristics.

Rendering mode Typical data scenario What it prevents Architectural outcome
Virtual scrolling Large event volumes, high resource counts, and wide date ranges across day, week, work week, month, agenda, and all timeline views Rendering all time slots and resource rows in the DOM at once DOM bounded to the viewport; smooth scrolling and stable memory
Lazy loading (remote data binding) Events spread across long time ranges or stored in large remote datasets Loading the entire event or resource dataset up front in the browser Data fetched incrementally from the server based on the current view interval and query configuration, keeping network transfer and memory usage predictable

Mode combinations: Virtual scrolling and lazy loading can work together, optimizing DOM rendering and data retrieval for large remote-data schedules.

Server-side operations

Remote data binding requests only the active date range and delegates querying and persistence to back-end APIs, reducing client-side data transfer and supporting large scheduling datasets.

Server side operation Syncfusion React Scheduler coverage Architectural benefit
Create Appointments created through the editor window, quick pop-up window, or UI interactions are submitted to back-end API endpoints for insertion. This ensures authoritative event creation, enforces business rules, and maintains consistent multiclient state.
Read The Scheduler requests only events that fall within the current view's date range from remote services. This reduces payload size and avoids loading full datasets into the browser.
Update Editing actions like field changes, time changes, and recurrence edits trigger server executed update operations. This ensures updates are persisted centrally and reflected consistently.
Delete Deletion of appointments invokes back-end delete endpoints that remove the event from the server's data store. This prevents stale records and keeps server and client data synchronized.

To understand how Scheduler CRUD operations are handled on the server, refer to the Scheduler documentation.

React Scheduler Server-Side Operations.


Performance benchmarking and validation

Benchmark data should be evaluated alongside the tested workload, environment, and measurement methodology to support informed performance assessments.

Benchmark scenario

The supplied source documents Scheduler performance benchmark scenarios for initial load, event creation, updates, and deletion across calendar views. Use these benchmarks to evaluate rendering efficiency, scalability, and interaction responsiveness.

Benchmark scenario What the benchmark measures Architectural relevance
Initial Scheduler load Time required to render the active view and reach first paint of the visible viewport. Provides a baseline comparison of rendering cost across different Scheduler views and layouts.
Event creation Latency for inserting a new event into the visible date range. Illustrates the cost of inserting new appointment data into an already rendered view.
Event update Time required to update event fields or modify recurrence patterns. Demonstrates how update operations propagate through the Scheduler rendering pipeline.
Event deletion Time taken to remove an event from the current view. Reflects cleanup and refresh behavior after delete operations.

Testing environment

  • Component: Syncfusion React Scheduler (2026 Volume 1, 33.1.44)
  • Framework: React (production build)
  • Browser: Google Chrome 122.x (Blink rendering engine)
  • Operating system: Windows 11 (64‑bit)
  • Hardware: AMD Ryzen 5 7530U processor, 16 GB RAM, AMD Radeon graphics
  • Measurement methodology: Performance timings were measured using the Scheduler’s action lifecycle events, capturing the duration from operation start to completion of the corresponding UI update.

Disclaimer: Actual performance may vary based on hardware, browser version, viewport size, dataset shape, and application configuration.

Benchmark results

The following results were recorded using a standard dataset of 300 resources across all supported Scheduler views. Timings cover the initial render and each CRUD operation. Use these as a reference baseline and validate against your own dataset shape, resource count, and target hardware.

View Initial (ms) Create (ms) Update (ms) Delete (ms)
Day (3k events) ~799 ~440 ~478 ~436
Week (9k events) ~1659 ~804 ~823 ~767
Month (36k events) ~1130 ~626 ~720 ~612
Agenda (9k events) ~6508 ~6281 ~7854
Timeline Day (3k events) ~417 ~295 ~304 ~267
Timeline Week (9k events) ~1268 ~693 ~809 ~708
Timeline Month (36k events) ~863 ~695 ~783 ~707
Timeline Year (10k events) ~3469 ~3633 ~3641 ~3518

Try live demo and navigate to the Performance tab to view and validate live performance metrics.


Real-time performance and scalability

Validate sustained event updates and scalability dimensions that are not represented by a single event-count benchmark.

Real-time update performance

The Scheduler updates only affected events and visible schedule areas instead of refreshing the entire view, helping reduce unnecessary DOM updates and maintain UI stability during frequent or real-time schedule changes.

Real time scenario Syncfusion React Scheduler coverage Rendering behavior
Single event updates Supported Only the modified event is refreshed; the entire view is not re-rendered.
Batch event updates Supported The Scheduler updates only impacted slots and times; unaffected areas remain unchanged.
Live updates in resource based timeline views Supported Only the affected resource row re-renders; other rows remain stable.
Recurring event updates Supported Only the modified occurrence is recalculated; the entire series is not recomputed.
Real time updates during scroll Supported Scroll stability is maintained with incremental updates.
Live updates with lazy loading (remote data) Supported The server delivers only the current date range events; updates render without loading the full dataset.
Real time updates across views Supported View-specific rendering ensures only visible dates, cells, or intervals participate in refresh cycles.

Scalability beyond row count

Scheduler scalability extends beyond event count to include resources, timeline span, event density, recurrence patterns, and concurrent instances. Virtualization helps render large schedules efficiently with predictable browser memory usage, while each Scheduler instance maintains its own rendering lifecycle and state.

Scalability dimension Syncfusion React Scheduler coverage Architectural behavior
Large resource count Large resource sets across all standard and timeline views can be handled. Only visible resource rows are rendered, keeping DOM size and memory usage predictable.
Large time ranges Multiday, multiweek, multimonth, and year level views are supported. Time slots are virtualized to prevent DOM growth across wide planning ranges.
Large event datasets Events are loaded only for the active date range, with on demand remote fetching. Rendering is limited to visible events; load on demand avoids full dataset transfers, keeping memory usage bounded.
Concurrent Scheduler instances Multiple Scheduler components can run in parallel on the same page. Each instance is isolated with its own rendering pipeline and state.
Dynamic view changes Switching between day, week, work week, month, year, agenda, month agenda, and timeline views is supported. Only the required structures are recalculated for the target view; full component reinitialization is not required.
Multi calendar dashboards Multiple Scheduler widgets are supported in complex layouts. Each widget renders independently, allowing isolated updates and minimizing shared DOM cost.
Recurrence events with large series Recurrence processing and occurrence level edits are efficient. Only affected occurrences are recomputed, not entire recurrence sets.

4

Security and compliance

Understand the security responsibility boundary between the Scheduler (presentation layer) and application-owned functions such as authentication, authorization, data protection, and audit logging. Review deployment security characteristics, export controls, compliance certifications, and vulnerability management to validate organizational readiness and regulatory compliance.

Security architecture and responsibilities

Separate component behavior from the controls that the application, back end, and infrastructure must implement.

Security responsibility matrix

The Scheduler renders data and exposes interaction callbacks; it does not replace authentication, authorization, validation, masking, audit, transport, or tenant controls. The following matrix summarizes the security responsibilities of the Scheduler and the application.

Security concern Component behavior Application responsibility
Authentication Does not handle login or identity; renders whatever data the app provides. Implement authentication and validate tokens or sessions for all Scheduler related API calls.
Authorization Does not enforce permissions; only triggers UI actions. Enforce role or permission checks on the back end and return only authorized event data.
Data validation Basic, UI level validation only. Perform full server side validation for create, update, and delete actions.
Input sanitization (XSS) Renders provided data; templates can use sanitized fields. Sanitize or encode event fields and enforce CSP headers.
CRUD operations Provides UI hooks to initiate CRUD actions; no data operations happen internally. Expose secure endpoints with auth, validation, and concurrency handling.
Transport security No network configuration; relies entirely on the hosting app. Use HTTPS, secure headers, and proper CORS rules; protect tokens in transit.
Data masking Does not mask sensitive values. Mask or redact sensitive fields before sending data to the UI or exports.
Audit logging Does not log user activity. Log event creations, edits, deletions, and permission changes in back-end systems.
RBAC and multitenancy No awareness of roles or tenants. Enforce RBAC and strict tenant isolation at query and storage levels; never return cross tenant data.
Export and print control Can print or export views but does not enforce policies. Control export permissions, mask sensitive data, and apply export policies.
Client side rendering security Pure client-side UI; no server code or external runtime executed. Apply secure headers and validate custom templates to avoid unsafe HTML.

Security architecture overview

The Scheduler does not store event data or communicate independently with back-end services. It renders appointment, resource, and timeline data that the application has already retrieved, filtered, validated, and authorized.

Business rules, duplication checks, conflict resolution, tenant isolation, and persistence remain server-owned. Scheduler interactions trigger callbacks that the application handles through its normal security and business logic.

React Scheduler Security Architecture Overview.

OWASP security responsibility context

This mapping relates applicable OWASP security risk areas to the Scheduler and distinguishes component responsibilities from those of the host application. Use it to evaluate the component’s security role without mistaking it for a complete application security review.

OWASP risk area How it relates to the Scheduler Responsibility
A01: Broken Access Control The Scheduler displays only the events provided by the application and does not enforce user level visibility or edit restrictions. Access control decisions must be enforced by the application and backend services.
A03: Software Supply Chain Failures The Schedule component is brought in via client-side packages, which introduces risk if the dependency supply chain is not properly verified and controlled. The organization must audit dependencies, track updates proactively, and secure package management practices.
A04: Cryptographic Failures Calendar data is transmitted through the application's existing API layer using standard HTTPS or TLS. TLS configuration is handled by back-end services and infrastructure.
A05: Injection Event titles, notes, and custom templates may contain user supplied content. The Scheduler does not sanitize data automatically unless the app enables sanitization. Applications must sanitize and validate event data before binding.
A07: Authentication Failures The Scheduler does not handle authentication tokens or session state. Authentication is implemented by the application and identity provider.
A08: Software or Data Integrity Failures As an npm package, Scheduler integrity relies on package source trust, version pinning, and controlled distribution. Use lock files, internal registries, checksum verification.
A09: Security Logging and Alerting Failures The Scheduler emits event lifecycle callbacks which can be logged by the application. Applications should capture and forward these actions to monitor or audit systems.

Application and data security

Validate data flow, permission enforcement, deployment behavior, and export controls in the target application.

Data flow and network behavior

Scheduler requests follow the application’s normal data layer. The component does not define endpoints or introduce a separate networking service.

Network behavior and transportation

  • Request initiation: All HTTP requests are made by the application’s data layer. The Scheduler triggers callbacks but does not define endpoints.
  • Transportation: All Scheduler API calls should use HTTPS. Any cross origin access must be governed by back-end CORS rules.
  • Compression and caching: Standard HTTP caching and compression for static assets and event API responses can be applied by the server.
  • Batching and throttling: Applications may throttle or batch requests when users navigate quickly between views; the Scheduler does not handle this automatically.

Network control ownership

  • API routing: All endpoints for event CRUD operations are defined and secured by the back end.
  • Authentication headers: Tokens, identity headers, and custom metadata are attached by the application. The Scheduler never handles authentication artifacts.
  • Server side validation: Back-end services enforce event level validation, permission checks, conflict handling, and recurrence rules.
  • Infrastructure security: API gateways, WAF rules, reverse proxies, and routing controls apply to Scheduler traffic just like any other API request.

Authentication and authorization integration

The Scheduler can expose or suppress UI interactions and support application-defined access rules, but authentication, authorization, and authoritative permission checks remain the responsibility of the host application and back-end services.

Security requirement Scheduler capability Security enforcement layer
Calendar or view visibility Renders only the calendars or resources the application provides. Application layer: Determine allowed calendars or resources based on user role before rendering.
Event edit permissions Editing can be enabled or disabled. Application layer: Enable or disable editing based on permissions; unauthorized users get read only mode.
Event access and data filtering Shows only the event data passed to it; does not filter or fetch independently. Back end: Return only authorized events. Application layer: Bind only permitted data to the component.
Validation of edits Triggers callbacks before applying edits. Application layer: Run validation, conflict checks, rule enforcement before persisting changes.
Sensitive data masking Displays masked or restricted values provided by the app. Back end or Application layer: Sanitize or mask sensitive event fields before sending to the UI.
Read only mode Entire Scheduler can be made read only. Application layer: Enable read only mode based on roles or policy conditions.
Edit audit capture Emits lifecycle notifications. Application layer to logging or SIEM: Application captures these events and forwards to audit systems.
Resource level access control Renders only the resources supplied. Back end: Enforce resource visibility rules. Application layer: Pass only authorized resource sets.
Recurring event rules Supports recurring events but does not enforce permissions on series edits. Back end: Validate series versus occurrence modification rights and enforce concurrency or policy.

Deployment security characteristics

Scheduler’s deployment security characteristics are determined by its architectural design. These behaviors are built into the component and cannot be disabled, altered, or misconfigured through application settings.

Deployment characteristic What it means
No external runtime connections The component never contacts Syncfusion or third party services; it talks only to your APIs.
Fully self hosted (no CDN dependency) All scripts or styles come from the npm package you deploy; no external assets required.
Air gapped or restricted-network-compatible Works fully offline with zero outbound requests; suitable for high security networks.
Internal-registry-compatible No inline CSS; uses static stylesheets. Safe for strict CSP and internal package registries.
CSP compliant No telemetry, metrics, or external logging. Data stays within your environment.
No background service dependency All logic runs in the browser; no Syncfusion cloud, schedulers, or external services.
Self contained assets Recurrence logic, time zone utilities, styles, and scripts all ship locally in the package.
Private registry support It can be installed from internal mirrors or registries without contacting public npm.
Strict CSP alignment Uses React virtual DOM and static CSS; works in environments with strict CSP rules.
Offline or isolated-environment-ready Works fully without internet, making it suitable for offline or isolated deployments.
No dynamic code evaluation No runtime eval or dynamic script generation, making it safe for restricted execution policies.
Client side recurrence processing Recurring events are generated locally; no back-end scheduler required.
No external calendar provider dependency Does not integrate with Google, Outlook, or Exchange unless you explicitly build it to do so.
Independent view generation All views, including day, week, month, timeline, and agenda, are rendered entirely on the client.
Local drag and drop with resize support All interactions happen in the browser with no API calls.
Client side slot or time validation Blackout periods, restricted hours enforced using app provided config.
Local print ready rendering Printing is handled by the browser; no server side export engine needed.

Export security

Printing or exporting does not create an authorization boundary. The application determines who can export and which events, resources, fields, ranges, and occurrences are included. Any sensitive calendar data should also be filtered or masked by the application before export.

Export security concern How it is addressed Enforcement location
Who can trigger an export Export buttons are shown or hidden based on user roles; only authorized users can export. Application layer
What data appears in the export Export includes only the event data the backend returns to the application. Application layer
Export to Syncfusion servers Export happens entirely in the browser or through your back end; no data is ever sent to Syncfusion servers. Component architecture
Export audit logging Actions like print or export can be intercepted and logged by the application. Application to logging or audit system
Server-side export path If server side exporting is used, data flows only through your back end. The back end must secure and authorize export endpoints. Application to back-end export service
Time zone normalization Exported events follow the application defined time zone for consistent timing. Application layer
View scope limits Exporting can be restricted to only the visible date range. Application layer
Recurring event handling The application decides whether exports include full series or only visible occurrences. Application layer
Private or restricted events Sensitive or private events can be masked or minimized before exporting. Application layer
Export size or range limits The application can restrict how far back or forward a user may export to prevent bulk data extraction. Back end to application layer

Compliance and security assurance

Collect current certification, vulnerability-management, and runtime-verification evidence for procurement and deployment approval.

Compliance certifications

Syncfusion maintains independently audited and documented compliance frameworks that support enterprise procurement, security evaluations, and regulated industry adoption. These certifications and documentation sets provide verified assurance of Syncfusion’s security, privacy, and operational controls.

Certification or standard Coverage Procurement reference
SOC 2® Type 2 Syncfusion maintains an independently audited SOC 2® Type 2 program covering all five Trust Service Criteria. SOC 2® Type 2 overview
GDPR Syncfusion documents GDPR aligned data handling and privacy practices as part of its security and legal compliance framework. GDPR overview
WCAG 2.1 AA (accessibility) Syncfusion components, including web UI libraries, are tested for WCAG 2.1 AA and Section 508 accessibility; platform accessibility documentation is published. Accessibility standards
ISO 27001 Organizations must request current certification status from Syncfusion's enterprise team. Contact sales team for certification information
Section 508 Syncfusion aligns with Section 508 accessibility requirements, supported by WCAG conformance and published accessibility documentation. Section 508 documentation

Vulnerability management

Syncfusion follows a defined vulnerability management process for identifying, fixing, and communicating security issues. Security patches for the Scheduler component are delivered through regular product releases, and Syncfusion provides a responsible disclosure channel for reporting potential vulnerabilities.

Vulnerability management aspect Coverage Where to verify
Responsible disclosure policy Syncfusion provides a public channel to report security issues for all components, including the Scheduler. Responsible disclosure
Security patch delivery Security fixes are delivered through regular Essential Studio or npm updates. Release notes
Security fix documentation The release notes page lists resolved security items and corrections for UI components. Release history
Enterprise security escalation Enterprise customers can report security concerns through priority support channels. Support SLA
Dependency vulnerability monitoring Third party libraries are monitored and updated as part of Syncfusion's maintenance and audited software practices. Release notes

Explore our blog on achieve regulatory compliance to understand how Syncfusion components maintain compliance standards.

Security assurance statements

The following statements describe key security characteristics of the Scheduler component and its supporting vendor security practices. Each statement can be independently verified using the methods listed in the corresponding table.

Assurance statement Verification method
The Scheduler component does not initiate outbound calls to Syncfusion or third party services. Check the Network tab in Browser DevTools.
No inline styles are injected into the DOM at runtime. Inspect the DevTools Elements panel and review the CSP logs.
No eval or Function constructor is used in rendering. DevTools: Confirm absence of console errors and CSP unsafe-eval violations.
Event data rendering prevents script execution. Inject test payload values; observe the DOM to ensure the script is not executed.
The component does not handle authentication tokens or session data. Check the Application Storage or Cookies sections in DevTools to make sure no entries are created.
Vendor security documentation like SOC 2, GDPR, Section 508, and WCAG is available. Request via Syncfusion sales or legal documentation.
Accessibility conformance (WCAG 2.1 AA) is documented. Accessibility documentation
Security patches and dependency updates are part of regular releases. Release history and Release notes
No data is stored in browser storage. Check the Application Storage section in DevTools.
Drag and-drop, resize, and view changes do not trigger external requests. Monitor the Network tab in DevTools during interactions.
Recurrence rules are processed locally with no external recurrence engine. Check Network tab while editing recurring events.
Resource or group navigation does not fetch remote data. Check the Network tab in DevTools during resource view changes.
Time zone adjustments are computed locally. Check Network tab while switching or loading time zone data.
Printing or exporting the Scheduler does not send data externally. Monitor Network tab during export or print operations.

5

Interactive live demos

Use the interactive live demos to assess the component in representative usage scenarios. Explore key capabilities, interactions, configuration options, and runtime behavior to validate functional fit and user experience against application requirements.

Try our Live Demo


6

Evaluation checklist

Print or copy this checklist into the evaluation record. Each item maps to a capability, condition, responsibility, or verification method documented above.

01. Functional fit

  • Required day, week, work week, month, year, agenda, month agenda, and timeline views confirmed in the live demo.
  • Complex RFC 5545 recurrence patterns, occurrence exceptions, and series edits validated with production-shaped data.
  • Resource grouping, editor, quick-info, drag-and-drop, resize, and conflict workflows meet the intended scheduling process.
  • Localization, RTL, time zones, daylight-saving behavior, keyboard use, and accessibility requirements are verified.

02. Architecture and delivery

  • Production build, package format, TypeScript, CSS, internal registry, and CI/CD pipeline have passed.
  • SSR and hydration are verified in the actual App Router, Suspense, ISR, or Edge pattern used by the application.
  • Micro-frontend singleton ownership and multi-Scheduler instance isolation are validated.
  • State management and design-system integration remain application-owned and maintainable.

03. Data, API, and extensibility

  • The selected adaptor works with the real back-end API, date-range query, and CRUD contract.
  • Database and ORM access occurs through secured back-end endpoints; no direct browser database access is required.
  • JWT or OAuth headers, token refresh, mTLS, and 401/403 handling are validated in the application layer.
  • Google Calendar or Outlook authentication, mapping, synchronization, and conflict rules are validated when required.
  • The most complex required editor, event, resource, cell, header, or time-axis customization is implemented.
  • Programmatic events and methods cover recurrence, external navigation, export, auditing, and cross-component workflows.

04. Performance and scalability

  • Virtual scrolling and lazy loading are configured for the target event count, resource count, and timeline span.
  • Initial views, navigation, CRUD, recurrence, scrolling, and live updates meet agreed targets on target hardware.
  • Long-running session memory and DOM behavior are profiled with DevTools.
  • Mobile and tablet performance is tested on representative devices.
  • Any required batching or throttling for high-frequency updates is implemented outside the Scheduler.

05. Security and compliance

  • Authentication, authorization, tenant isolation, validation, masking, conflict rules, and audit logging are enforced by the back end.
  • Outbound requests, storage, CSP, inline styles, unsafe-eval, recurrence processing, and interaction behavior are independently verified.
  • Print and export permissions, ranges, fields, recurrence handling, masking, and audit requirements are enforced.
  • Current SOC 2, GDPR, accessibility, Section 508, ISO 27001 status, vulnerability, and support evidence has been reviewed.

06. Final decision

  • No unsupported runtime or required native-mobile use case remains unresolved.
  • Every source condition and limitation has an owner, mitigation, or accepted exception.
  • Locally measured performance evidence is recorded instead of relying on unsupported benchmark numbers.
  • The result is recorded as pass, conditional pass, or fail for every mandatory evaluation area.
  • Stakeholders approve the remaining implementation, security, procurement, and maintenance responsibilities.

7

Frequently asked questions

Review common questions that influence architecture fit, performance validation, security approval, and long-term adoption decisions.

Can the React Scheduler work while an application migrates from the Next.js Pages Router to the App Router?

Yes. The React Scheduler is documented for both Pages Router and App Router integration patterns. Validate mixed-router deployments during migration, particularly hydration, data loading, and code-splitting behavior.

Validate both paths in the production build, particularly hydration, data loading, and route-level code splitting. See the Next.js integration guide.


Can the React Scheduler integrate with Google Calendar or Outlook?

Yes, the React Scheduler integrates through the providers’ APIs and application-managed authentication. Use the Google Calendar guide and Outlook integration reference.


Does the React Scheduler support GraphQL without building a full custom adaptor?

Yes. The built-in GraphQL adaptor supports querying and mutations including event creation, updating, deletion, drag-and-drop, resizing, and recurrence handling. You configure your GraphQL operations and map request/response shapes. This is not a from-scratch build.


For very large datasets, the recommended architecture is server-side storage with on-demand loading. The React Scheduler fetches only the events required for the active date window, preventing browser memory saturation and keeping rendering performance predictable.


Does the React Scheduler process the entire dataset or re-render the complete view during live updates?

The React Scheduler is designed to update only the modified events, slots, resource rows, recurrence occurrences, or visible view regions during typical live update scenarios, rather than re-rendering the entire view. Very high update frequencies may still require application-level throttling or batching.


Does the React Scheduler transmit application data to Syncfusion or third-party services at runtime?

The React Scheduler operates through the application’s configured API endpoints and documented deployment model. Verify runtime network behavior using browser DevTools as part of security review.


Does the React Scheduler enforce RBAC, tenant isolation, or event permissions?

No. With the React Scheduler, the application and back end must filter returned calendars, resources, and events and enforce create, edit, delete, recurrence, and export permissions. UI visibility is not an authorization boundary.


Does the React Scheduler component require inline styles, inline scripts, or unsafe eval?

No. The React Scheduler does not inject inline styles and does not rely on dynamic evaluation. This can be verified by enabling strict CSP settings in your application and observing the absence of CSP violation warnings.


How should daylight-saving and time-zone behavior be handled in the React Scheduler?

The React Scheduler relies on browser Date and locale behavior. Store event data in UTC and convert it in the application for consistent regional behavior; review the time-zone documentation.


What happens when a vulnerability is found in a Syncfusion package or one of its dependencies?

Security and dependency fixes are delivered through the standard release process and documented in release notes and release history. Evaluators can report issues through the responsible-disclosure process.

Review the release notes, release history, and the applicable support SLA when planning remediation and escalation.


8

Resources

Use these references after reviewing the guide and FAQs to continue implementation, validation, troubleshooting, and design evaluation.

Up arrow icon