Record polished web app UI demo videos for walkthroughs, tutorials, and showcases.
The material appears to be a prompt-oriented, open-source skill for guiding Playwright-based UI demo recording, with no required secrets and no declared remote endpoints. Given that it is prompt-only, open-source, and highly adopted by the community, the overall risk is low; the main caveat is that its intended use naturally involves page inspection and browser automation if actually executed.
The material explicitly states that no keys or environment variables are required, and the README does not ask for API keys, account tokens, or credential injection; there is no clear sign of credential collection, storage, or misuse.
It declares no remote endpoint hosts, and the documentation does not configure third-party uploads, telemetry, or external APIs; based on the material, there is no evidence of active data exfiltration to unknown services.
The objective check marks it as prompt-only, so the audited artifact is closer to operational guidance than an executable binary or service. Although the README includes Playwright and page.evaluate examples, these are usage scripts for the user and do not by themselves mean the skill requests or obtains local execution privileges.
The material does not declare permissions to read or write local files, system directories, databases, or cloud storage; the README only describes inspecting interactive web elements and recording demos. If later wrapped as an executable tool, it could access page content and output video files, but the current material alone does not show overbroad access.
The source is an open-source GitHub repository with very high community adoption (about 210.5k stars), which materially lowers supply-chain risk; while the license is unspecified and maintenance status is unknown, these are informational gaps rather than high-risk red flags in the absence of other issues.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "ui-demo" skill from askskill: 1. Download https://raw.githubusercontent.com/affaan-m/ECC/main/skills/ui-demo/SKILL.md 2. Save it as ~/.claude/skills/ui-demo/SKILL.md 3. Reload skills and tell me it's ready
Create a 90-second UI demo video for our SaaS dashboard showing login, viewing the overview, filtering reports, and exporting a CSV. Keep the cursor visible and pacing natural for a customer preview.
A polished WebM demo video that clearly shows the key workflow and is suitable for customers.
Record a walkthrough video for a web app focusing on three steps in the team management page: adding members, setting permissions, and sending invitations. Make it feel professional, like a product launch demo.
A step-by-step WebM walkthrough highlighting key feature interactions and UI feedback.
Create a tutorial-style UI recording showing how a user creates a project in the admin panel, fills in basic information, saves settings, and views the results page. Use a slightly slower pace for beginners.
A beginner-friendly WebM tutorial video with visible cursor movement and easy-to-follow pacing.
Record polished demo videos of web applications using Playwright's video recording with an injected cursor overlay, natural pacing, and storytelling flow.
Every demo goes through three phases: Discover -> Rehearse -> Record. Never skip straight to recording.
Before writing any script, explore the target pages to understand what is actually there.
You cannot script what you have not seen. Fields may be <input> not <textarea>, dropdowns may be custom components not <select>, and comment boxes may support @mentions or #tags. Assumptions break recordings silently.
Navigate to each page in the flow and dump its interactive elements:
// Run this for each page in the flow BEFORE writing the demo script
const fields = await page.evaluate(() => {
const els = [];
document.querySelectorAll('input, select, textarea, button, [contenteditable]').forEach(el => {
if (el.offsetParent !== null) {
els.push({
tag: el.tagName,
type: el.type || '',
name: el.name || '',
placeholder: el.placeholder || '',
text: el.textContent?.trim().substring(0, 40) || '',
contentEditable: el.contentEditable === 'true',
role: el.getAttribute('role') || '',
});
}
});
return els;
});
console.log(JSON.stringify(fields, null, 2));
<select>, <input>, custom dropdowns, or comboboxes?value="0" or value="" which looks non-empty. Use Array.from(el.options).map(o => ({ value: o.value, text: o.text })). Skip options where text includes "Select" or value is "0".@mentions, #tags, markdown, or emoji? Check placeholder text.required, * in labels, and try submitting empty to see validation errors."Submit", "Submit Request", or "Send".input[type="number"] to its column header instead of assuming all numeric inputs mean the same thing.A field map for each page, used to write correct selectors in the script. Example:
/purchase-requests/new:
- Budget Code: <select> (first select on page, 4 options)
- Desired Delivery: <input type="date">
- Context: <textarea> (not input)
- BOM table: inline-editable cells with span.cursor-pointer -> input pattern
- Submit: <button> text="Submit"
/purchase-requests/N (detail):
- Comment: <input placeholder="Type a message..."> supports @user and #PR tags
- Send: <button> text="Send" (disabled until input has content)
Run through all steps without recording. Verify every selector resolves.
Silent selector failures are the main reason demo recordings break. Rehearsal catches them before you waste a recording.
Use ensureVisible, a wrapper that logs and fails loudly:
async function ensureVisible(page, locator, label) {
const el = typeof locator === 'string' ? page.locator(locator).first() : locator;
const visible = await el.isVisible().catch(() => false);
if (!visible) {
const msg = `REHEARSAL FAIL: "${label}" not found - selector: ${typeof locator === 'string' ? locator : '(locator object)'}`;
console.error(msg);
const found = await page.evaluate(() => {
return Array.from(document.querySelectorAll('button, input, select, textarea, a'))
…
Conduct multi-source web research and produce cited, source-attributed reports.
Unify multi-channel notifications for routing, deduplication, escalation, and inbox consolidation.
Audit, plan, and implement SEO improvements for better search visibility.
Refine retrieved context iteratively to improve subagent understanding and output quality.
Fetches up-to-date framework docs for setup, APIs, and code examples.
Design adaptive agent workflows with eval gates and reusable skill extraction.
Quickly add Zoom’s prebuilt React video UI to web workflows.
Lets AI understand and operate web interfaces through unified UI scene graphs.
Create interactive videos and AI product demos that answer viewer questions.
Record browser interactions and errors to analyze flows and generate automated tests.
Automate and test native Windows desktop apps through UI Automation via MCP.
Record and correlate browser UI and API events to trace data sources.