tailwind
Skill48 starsChanged 6 months agoMITView on GitHub
Tailwind CSS v4.2 browser-runtime patterns for HyperFrames compositions. Use when scaffolding or editing projects created with `hyperframes init --tailwind`, writing Tailwind utility classes in composition HTML, adding CSS-first Tailwind v4 theme tokens, debugging v3 vs v4 syntax, or deciding when to compile Tailwind to CSS instead of using the browser runtime.
We split this skill into the rules it gives an agent
14 rules. 0 are common, 7 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 19 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 47
Avoid v3 setup patterns in browser-runtime compositions:
- Very specific: line 56
Do not add a tailwind.config.js just to define colors, fonts, spacing, or utilities for a v4 browser-runtime composition.
- Very specific: line 58
If you truly need an existing JavaScript config for a compiled v4 build, load it explicitly from CSS with @config, then validate in the …
- Distinctive: line 62
Keep Tailwind responsible for static layout and visual style.
- Distinctive: line 99
Use complete class names in HTML, data attributes, or explicit CSS instead:
- Very specific: line 105
If a generated class is unavoidable, make sure the full class token appears in a text/tailwindcss block before validation.
- Very specific: line 109
Use stable dimensions: w-[...], h-[...], aspect-video, grid, flex, and fixed padding for video layouts.
- Distinctive: line 110
Prefer transforms and opacity for animated properties.
- Distinctive: line 111
Keep Tailwind transitions out of render-critical timing unless a seekable runtime owns the state.
- Distinctive: line 112
Avoid hover, focus, scroll, viewport, or pointer variants for content that must render deterministically.
- Very specific: line 113
Use explicit border colors.
- Very specific: line 114
Use v4 utility names: shadow-xs, rounded-xs, outline-hidden, shrink-*, and grow-* where those replacements apply.
- Distinctive: line 119
After editing a Tailwind-enabled composition:
- Very specific: line 143
Run npx hyperframes validate and render a short proof.
“Common” is measured: kept by at least 6 in 10 of the 19 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Tailwind CSS for HyperFrames
HyperFrames init --tailwind uses the Tailwind browser runtime pinned to @tailwindcss/browser@4.2.4. Treat that as Tailwind v4, not v3.
This skill is for composition HTML generated by the CLI. It is not for packages/studio, which still uses Tailwind v3 internally with tailwind.config.js, PostCSS, and @tailwind directives.
When To Use
- The user asks for Tailwind in a HyperFrames composition.
- A project was created with
hyperframes init --tailwind. - You see
window.__tailwindReadyinindex.html. - You need utility classes, CSS-first theme tokens, custom utilities, or v3-to-v4 migration guidance.
- The render has missing styles and the project is relying on the browser runtime.
Version Contract
- Pinned runtime:
@tailwindcss/browser@4.2.4. - Browser runtime script is injected by the CLI. Do not replace it with
cdn.tailwindcss.com. - HyperFrames waits for
window.__tailwindReadybefore frame capture starts. - The readiness shim must stay deterministic: no render-loop polling APIs, no clock-based retries, no runtime network fetches beyond the pinned Tailwind runtime script.
- For offline, locked-down, or production-stable renders, compile Tailwind to CSS and include the stylesheet directly instead of relying on the browser runtime.
v4 Rules
Tailwind v4 is CSS-first:
<style type="text/tailwindcss">
@theme {
--color-brand: oklch(0.68 0.2 252);
--font-display: "Inter", sans-serif;
}
@utility headline-balance {
text-wrap: balance;
letter-spacing: 0;
}
</style>Avoid v3 setup patterns in browser-runtime compositions:
/* Do not use these in Tailwind v4 browser-runtime compositions. */
@tailwind base;
@tailwind components;
@tailwind utilities;Do not add a tailwind.config.js just to define colors, fonts, spacing, or utilities for a v4 browser-runtime composition. Use @theme and @utility in a text/tailwindcss style block.
If you truly need an existing JavaScript config for a compiled v4 build, load it explicitly from CSS with @config, then validate in the browser. Do not assume v4 auto-detects v3 config files.
HyperFrames Composition Pattern
Keep Tailwind responsible for static layout and visual style. Keep motion timing in GSAP or another seekable adapter.
<section
class="clip absolute inset-0 grid place-items-center bg-zinc-950 text-white"
data-start="0"
data-duration="5"
data-track-index="1"
>
<div class="w-[1280px] max-w-[82vw] text-center">
<p class="mb-6 text-xl font-medium uppercase tracking-[0.18em] text-cyan-300">
Render-ready Tailwind
</p>
<h1 class="text-7xl font-black leading-none text-balance">
Utility classes, deterministic frames.
</h1>
</div>
</section>For repeated items, prefer class lists plus CSS custom properties over generating class names dynamically:
<span class="inline-block translate-y-[calc(var(--i)*6px)] opacity-80" style="--i: 0"></span>
<span class="inline-block translate-y-[calc(var(--i)*6px)] opacity-80" style="--i: 1"></span>
<span class="inline-block translate-y-[calc(var(--i)*6px)] opacity-80" style="--i: 2"></span>Dynamic Class Safety
Tailwind's browser runtime scans the current document and generates CSS for class names it can see. Do not build render-critical class names only at seek time:
// Risky: Tailwind may not see every generated class before capture.
element.className = `bg-${color}-500`;Use complete class names in HTML, data attributes, or explicit CSS instead:
<div data-tone="blue" class="bg-blue-500 data-[tone=rose]:bg-rose-500"></div>If a generated class is unavoidable, make sure the full class token appears in a text/tailwindcss block before validation.
Video-Specific Guardrails
- Use stable dimensions:
w-[...],h-[...],aspect-video,grid,flex, and fixed padding for video layouts. - Prefer transforms and opacity for animated properties.
- Keep Tailwind transitions out of render-critical timing unless a seekable runtime owns the state.
- Avoid hover, focus, scroll, viewport, or pointer variants for content that must render deterministically.
- Use explicit border colors. Tailwind v4 changed the default border behavior from v3, so
border border-white/20is safer than bareborder. - Use v4 utility names:
shadow-xs,rounded-xs,outline-hidden,shrink-*, andgrow-*where those replacements apply. - Be careful with modern CSS utilities if the output needs older browser support. Tailwind v4 targets modern browsers.
Validation
After editing a Tailwind-enabled composition:
npx hyperframes lint
npx hyperframes validate
npx hyperframes inspectFor a render proof:
npx hyperframes render . --workers 1 --quality draft --output tailwind-proof.mp4The validation path should show no missing-style flashes on frame 0. If styles appear in preview but not render, check that window.__tailwindReady exists and resolves before capture.
Quick Debug Checklist
- Confirm the project was scaffolded with
hyperframes init --tailwind. - Confirm the script points to
@tailwindcss/browser@4.2.4. - Confirm
window.__tailwindReadyis present. - Replace v3
@tailwinddirectives with v4 browser-runtime CSS. - Move custom tokens from
tailwind.config.jsto@theme. - Replace dynamically assembled classes with complete static tokens.
- Run
npx hyperframes validateand render a short proof.
Credits And References
- Tailwind CSS official v4 installation, upgrade, and compatibility docs: https://tailwindcss.com/docs
- Tailwind CSS v4 release notes: https://tailwindcss.com/blog/tailwindcss-v4
- Community Tailwind skills were reviewed for v4 gotchas and skill shape, but this skill keeps the durable contract in-repo and HyperFrames-specific.
Other versions22 projects use a version of this.
Word for word · 0
None found.
Edited · 6
- boraoztunc/skills★ 337100% same
- delorenj/skills★ 16100% same
- hoanghd218/claude-code-2-days★ 8100% same
- Biznomad/claude-skills★ 0100% same
- Fldicoahkiin/WalDrive★ 0100% same
- florattu/claude-skills★ 0100% same
Wrote their own version · 16
- kid-sid/claude-spellbook★ 190same name
- nahid-sparktales/agent-dispatcher★ 59same name
- PyModel/react-frontend-skills★ 23same name
- YepAPI/skills★ 8same name
- genfeedai/genfeed.ai★ 4same name
- Mane087/IA-Skills★ 4same name
- iwritec0de/app-dev★ 3same name
- Aver005/agent-skills★ 2same name
- display-design-studio/skills★ 2same name
- ffsshhttiikk/opencode-agents-skills★ 2same name
6 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use contribute-catalog, typegpu and 1 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
FldicoahkiinSkillcontribute-catalog
Author a new HyperFrames registry block (caption style, VFX block, transition, lower third) or component (text effect, overlay, snippet) and ship it as an upstream PR to the hyperframes repo. Use ONLY when the user wants to CONTRIBUTE to the public catalog — for in-project caption/transition authoring use the `hyperframes` skill, for installing existing registry items use the `hyperframes-registry` skill.
Also in 3 projects that use this
software-mansion-labsSkilltypegpu
TypeGPU is type-safe WebGPU in TypeScript. Use whenever the user writes, debugs, or designs TypeGPU code: 'use gpu' shader functions, tgpu.fn, buffers, textures, bind groups, compute and render pipelines, command encoders, render passes, render bundles, vertex layouts, slots, accessors, @typegpu/react hooks (useRoot, useFrame, useUniform), React Native worklet rendering, and any TypeGPU API. Shader logic and CPU-side resources are tightly coupled - handle both sides here even if the user only mentions one (e.g. "how do I write a shader", "how do I create a buffer"). Trigger on any mention of typegpu, tgpu, "use gpu", TypedGPU, or WebGPU code written using TypeGPU's schema API (d.*, tgpu.*, std.*). Do NOT trigger for raw WebGPU (using GPUDevice/GPURenderPipeline directly without tgpu), WGSL-only questions, Three.js, Babylon.js, or WebGL.
Also in 3 projects that use this
YepAPISkilldata-pipelines
ETL patterns, cron scheduling, queue-based processing, and batch jobs with Inngest/BullMQ.
Also in 3 projects that use this
In this repository30 other files it gives its agents.
- obsidian-brainSkill
- animejsSkill
- css-animationsSkill
- greet-anton-abyzovSkill
- gsapSkill
- higgsfield-seedanceSkill
- hyperframes-cliSkill
- hyperframes-mediaSkill
- hyperframes-registrySkill
- hyperframesSkill
- lottieSkill
- obsidian-brainSkill
- private-skillSkill
- remotion-to-hyperframesSkill
- scoutSkill
- slack-messagingSkill
- stub-skill-76f6713eSkill
- threeSkill
- waapiSkill
- website-to-hyperframesSkill
- excalidraw-mcpSkill
- greet-anton-abyzovSkill
- greet-elenaSkill
- handoffSkill
- hi-atlantisSkill
- html-reportSkill
- hyperframes-best-practicesSkill
- motion-graphics-promoSkill
- reaSkill
- remotion-best-practicesSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

