instrument-data-to-all…
Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D…
Reference skill for Zoom Video SDK UI Toolkit. Use after routing to a web video workflow when you want prebuilt React UI instead of building a fully custom Video SDK interface.
Claude Code
$ npx -y skills add anthropics/knowledge-work-plugins --skill ui-toolkit --agent claude-code
Codex
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a codex -y
Cursor
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a cursor -y
Gemini CLI
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a gemini-cli -y
GitHub Copilot
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a github-copilot -y
OpenCode
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a opencode -y
Windsurf
$ npx skills add anthropics/knowledge-work-plugins --skill ui-toolkit -a windsurf -y
name: ui-toolkit/web description: "Reference skill for Zoom Video SDK UI Toolkit. Use after routing to a web video workflow when you want prebuilt React UI instead of building a fully custom Video SDK interface." user-invocable: false triggers: - "ui toolkit" - "zoom ui" - "prebuilt video ui" - "video conferencing ui" - "zoom video ui toolkit" - "uitoolkit" - "ready-made zoom ui"
Background reference for the prebuilt Zoom Video SDK UI Toolkit on web. Prefer `choose-zoom-approach` first when the user might still need Meeting SDK instead.
**Official Documentation**: https://developers.zoom.us/docs/video-sdk/web/ui-toolkit/ **API Reference**: https://marketplacefront.zoom.us/sdk/uitoolkit/web/ **NPM Package**: https://www.npmjs.com/package/@zoom/videosdk-zoom-ui-toolkit **Live Demo**: https://sdk.zoom.com/videosdk-uitoolkit
**New to UI Toolkit? Follow this path:**
1. **Quick Start** - Get running in 5 minutes (see below) 2. **JWT Authentication** - Server-side token generation (required) 3. **Composite vs Components** - Choose your approach 4. **Framework Integration** - React, Vue, Angular, Next.js patterns 5. **Integrated Index** - see the section below in this file
**Having issues?**
The Zoom Video SDK UI Toolkit is a **pre-built video UI library** that renders complete video conferencing experiences with minimal code. Unlike the raw Video SDK, the UI Toolkit provides:
**When to use UI Toolkit:**
**When to use raw Video SDK instead:**
npm install @zoom/videosdk-zoom-ui-toolkit jsrsasign npm install -D @types/jsrsasign
**Note**: React support depends on the UI Toolkit version. Check the package peer dependencies for your installed version (React 18 is commonly required).
import uitoolkit from "@zoom/videosdk-zoom-ui-toolkit";
import "@zoom/videosdk-ui-toolkit/dist/videosdk-zoom-ui-toolkit.css";
const container = document.getElementById("sessionContainer");
const config = {
videoSDKJWT: "your_jwt_token",
sessionName: "my-session",
userName: "John Doe",
sessionPasscode: "",
features: ["video", "audio", "share", "chat", "users", "settings"],
};
uitoolkit.joinSession(container, config);
uitoolkit.onSessionJoined(() => {
console.log("Session joined");
});
uitoolkit.onSessionClosed(() => {
console.log("Session closed");
});'use client';
import { useEffect, useRef } from 'react';
export default function VideoSession({ jwt, sessionName, userName }) {
const containerRef = useRef<HTMLDivElement>(null);
const uitoolkitRef = useRef<any>(null);
useEffect(() => {
let isMounted = true;
const init = async () => {
const uitoolkitModule = await import('@zoom/videosdk-zoom-ui-toolkit');
const uitoolkit = uitoolkitModule.default;
uitoolkitRef.current = uitoolkit;
// If TypeScript complains about CSS imports, configure your app to allow them
// (for example via a global `declare module \"*.css\";`), or import the CSS from
// a global entrypoint (Next.js layout/_app) instead of inlining here.
await import('@zoom/videosdk-ui-toolkit/dist/videosdk-zoom-ui-toolkit.css');
if (!isMounted || !containerRef.current) return;
const config: any = {
videoSDKJWT: jwt,
sessionName: sessionName,
userName: userName,
sessionPasscode: '',
features: ['video', 'audio', 'share', 'chat', 'users', 'settings'],
};
uitoolkit.joinSession(containerRef.current, config);
uitoolkit.onSessionJoined(() => console.log('Joined'));
uitoolkit.onSessionClosed(() => console.log('Closed'));
};
init();
return () => {
isMounted = false;
if (uitoolkitRef.current && containerRef.current) {
try {
uitoolkitRef.current.closeSession(containerRef.current);
} catch (e) {}
}
};
}, [jwt, sessionName, userName]);
return <div ref={containerRef} style={{ width: '100%', height: '100vh' }} />;
}| Feature | Description | |---------|-------------| | `video` | Enable video layout and send/receive video | | `audio` | Show audio button, send/receive audio | | `share` | Screen sharing | | `chat` | In-session messaging | | `users` | Participant list | | `settings` | Device selection, virtual background | | `preview` | Pre-join camera/mic preview | | `recording` | Cloud recording (paid plan) | | `leave` | Leave/end session button |
**Required**: Generate JWT tokens on your server, never expose SDK secret client-side.
Plugins that turn Claude into a specialist for your role, team, and company. Built for Claude Cowork, also compatible with Claude Code.
Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D…
Run nf-core bioinformatics pipelines (rnaseq, sarek, atacseq) on sequencing data. Use when analyzing RNA-seq, WGS/WES, or…
This skill should be used when scientists need help with research problem selection, project ideation, troubleshooting stuck…
Deep learning for single-cell analysis using scvi-tools. This skill should be used when users need (1) data integration and batch…
Performs quality control on single-cell RNA-seq data (.h5ad or .h5 files) using scverse best practices with MAD-based filtering…
Set up your bio-research environment and explore available tools. Use when first getting oriented with the plugin, checking which…
Turn repeatable outputs of a one-person company into compounding assets. Use when Codex needs to explain asset-compounding…
dontbesilent 商业工具箱的技能调度台,根据当前问题和反馈选择下一步,在对话中直接执行、澄清、组合或对照尝试 Skill。用户不知道从哪里开始、需要调整处理方法、第一次使用…
Help define company values and culture for a minimalist business. Use when someone is setting up their company culture, preparing…