Install
$ agentstack add skill-dhtmlx-skills-dhtmlx-react-scheduler ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Source Of Truth
Use only:
- The current project's files, structure, and established patterns
- DHTMLX MCP for React Scheduler API details: https://docs.dhtmlx.com/mcp
- Official DHTMLX React Scheduler docs as fallback: https://docs.dhtmlx.com/scheduler/integrations/react/
Never invent props, hooks, templates, callback signatures, event names, or backend behavior.
If any React Scheduler API detail is unclear, resolve it through DHTMLX MCP before writing code.
Preflight
Before writing code, identify:
- package:
@dhtmlx/trial-react-scheduleror@dhx/react-scheduler— checkpackage.json, imports, lockfiles - runtime: React, Next.js (needs
"use client"), Remix, or other React-based setup - ownership model: React-managed (default) or Scheduler-managed (large datasets, Scheduler-centric app)
- persistence: local only,
data.save(default, single-entity), ordata.batchSave(bulk sync)
Workflow
- Confirm the installed DHTMLX React Scheduler package and import path.
- Decide the data ownership model before implementing features.
- Read only the reference file needed for the task:
- React integration/setup: [references/react-integration.md](references/react-integration.md)
- CRUD, state, and persistence: [references/data-and-crud.md](references/data-and-crud.md)
- Failure cases and guardrails: [references/known-failures.md](references/known-failures.md)
- Advanced patterns (views, resources, conflicts, undo/redo): [references/advanced-patterns.md](references/advanced-patterns.md)
- Styling, theming, CSS variables, selectors, and template-based visual customization: [references/styling-and-theming.md](references/styling-and-theming.md)
- Use DHTMLX MCP before relying on advanced or unfamiliar APIs.
- Implement with documented APIs only.
MCP Server
This skill relies on DHTMLX MCP for API verification. If the dhtmlx-mcp tool is not available, ask the user to add it:
Claude Code:
claude mcp add --transport http dhtmlx-mcp https://docs.dhtmlx.com/mcp
Codex:
codex mcp add dhtmlx-mcp --url https://docs.dhtmlx.com/mcp
If MCP is not available, use the official docs at https://docs.dhtmlx.com/scheduler/integrations/react/ as fallback.
Consult MCP First For
Consult DHTMLX MCP before using or changing:
- template callbacks you have not already verified
- recurring event payload shape (
rrule,recurring_event_id,original_start,deleted,duration) and themodals.onRecurrenceConfirmflow config.lightbox.sectionssection types andmap_toconventionspluginsprop keys and plugin dependencies (for exampletreetimelinerequirestimeline)- timeline/units view configuration (
property,y_property,x_unit,x_step,x_size) - advanced props such as
batchSave,customLightbox,modals,views,customViews, orfilter - event handler signatures (
on) when behavior is not fully clear - theme/skin values supported by the
themeprop, individual--dhx-scheduler-*variables and their inheritance defaults (full catalog:scheduler-docs/docs/guides/theme-css-variables.md), and runtime view-switch behavior viarefinstance API
Hard Rules
- The Scheduler container must have explicit height.
- CSS import must match the installed package and be a separate import line.
- Activate plugins through the
pluginsprop (plugins={{ recurring: true }}). The corescheduler.plugins({...})instance method is also supported, but the prop form is tidier, requires less code, and offers no benefit to reach for the instance when the prop covers it. - Switch skin/theme through the
themeprop (defaultterrace). Do not branch theme throughref.instance.setSkin()when the prop is wired. - Use the app theme as the single source of truth.
- Prefer JavaScript
Dateobjects forstart_dateandend_datein React-managed mode. - Normalize date values before persistence.
data.savecallbacks receiveSerializedEvent(date strings), notDateinstances. - Build backend payloads explicitly from normalized event models.
- Do not use undocumented internals when a documented prop or ref API exists.
- Do not mix React-managed props and imperative instance mutations unless synchronization is intentional.
Quick Checklist
- [ ] Correct package identified
- [ ] Matching CSS import used
- [ ] Explicit height provided
- [ ] Required features enabled via the
pluginsprop - [ ] Skin selected via the
themeprop (notsetSkin()) - [ ] Data ownership model chosen
- [ ] Dates normalized before persistence
- [ ] Advanced APIs verified with MCP
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: DHTMLX
- Source: DHTMLX/skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.