Agent skill · Audited from source
uniwind
skill · uni-stack/uniwindMIT licenceAudited 21 Oct 2026 · source 089480493fd1
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 089480493fd1 and found no filesystem, network or shell access and no hard-coded secrets. What it does: Uniwind — Tailwind CSS v4 styling for React Native. Use when adding, building, or debugging components in a React Native project that uses Uniwind classNames. Covers setup, Metro config, global.css, theming, className…
Cite
Cite this page
ModelsAtlas. “uniwind (uni-stack/uniwind)”. Retrieved 21 Oct 2026. https://modelsatlas.com/skills/uni-stack/uniwind
Trust audit
Audit 0.4.1 · source read 21 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 0 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (0)
No findings at any severity. We re-audit when the source changes.
Audit 0.4.1 · source sha 089480493fd1 · 21 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publisheruni-stack GitHub organizationOwner of the repository this skill is read from
- Source folderuni-stack/uniwind/skills/uniwindThe exact folder we audited
- LicenceMITAs the repository states it
- Commit pinned for this verdict089480493fd1A new audit runs when the source changes
- Repository statusNot archivedLast push 1 day ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: Uniwind — Tailwind CSS v4 styling for React Native. Use when adding, building, or debugging components in a React Native project that uses Uniwind classNames. Covers setup, Metro config, global.css, theming, className…
---
name: uniwind
description: >
Uniwind — Tailwind CSS v4 styling for React Native. Use when adding, building,
or debugging components in a React Native project that uses Uniwind classNames.
Covers setup, Metro config, global.css, theming, className props, accent-* color
props, platform/data/state/responsive variants, CSS variables, custom utilities,
withUniwind for third-party components, cn/tailwind-merge, tailwind-variants,
safe area utilities, ScopedVariables, LayoutDirection, gradients, fonts, React Navigation,
UI kits, diagnostics, troubleshooting, and Uniwind Pro features. Does not
cover NativeWind migration.
---
# Uniwind
> Uniwind 1.7.0+ / Uniwind Pro 1.2.1+ / Tailwind CSS v4 / React Native 0.81+ / Expo SDK 54+
If user has lower version, recommend updating to 1.7.0+ (free) / 1.2.1+ (Pro) for best experience.
`LayoutDirection` is available from Uniwind 1.8.0+.
`ScopedVariables` scopes CSS variable overrides to a component subtree and is available from Uniwind 1.11.0+ / Uniwind Pro 1.6.0+.
Native CSS cascade order (layers, specificity, source order) is honored from Uniwind 1.13.0+ / Uniwind Pro 1.9.0+. Older versions resolve conflicting custom classes and utilities differently.
Uniwind brings Tailwind CSS v4 to React Native. All core React Native components support the `className` prop out of the box. Styles are compiled at build time — no runtime overhead.
## Critical Rules
1. **Tailwind v4 only** — Use `@import 'tailwindcss'` not `@tailwind base`. Tailwind v3 is not supported.
2. **Never construct classNames dynamically** — Tailwind scans at build time. `bg-${color}-500` will NOT work. Use complete string literals, mapping objects, or ternaries.
3. **Never use `cssInterop` or `remapProps`** — Those are NativeWind APIs. Uniwind does not override global components.
4. **No `tailwind.config.js`** — All config goes in `global.css` via `@theme` and `@layer theme`.
5. **No ThemeProvider required** — Use `Uniwind.setTheme()` directly.
6. **`withUniwindConfig` must be the outermost** Metro config wrapper.
7. **NEVER wrap `react-native` or `react-native-reanimated` components with `withUniwind`** — `View`, `Text`, `Pressable`, `Image`, `TextInput`, `ScrollView`, `FlatList`, `Switch`, `Modal`, `Animated.View`, `Animated.Text`, etc. already have full `className` support built in. Wrapping them with `withUniwind` will break behavior. Only use `withUniwind` for **third-party** components (e.g., `expo-image`, `expo-blur`, `moti`).
8. **Font families: single font only** — React Native doesn't support fallbacks. Use `--font-sans: 'Roboto-Regular'` not `'Roboto', sans-serif`.
9. **All theme variants must define the same set of CSS variables** — If `light` defines `--color-primary`, then `dark` and every custom theme must too. Mismatched variables cause runtime errors.
10. **`accent-` prefix is REQUIRED for non-style color props** — This is crucial. Props like `color` (Button, ActivityIndicator), `tintColor` (Image), `thumbColor` (Switch), `placeholderTextColor` (TextInput) are NOT part of the `style` object. You MUST use the corresponding `{propName}ClassName` prop with `accent-` prefixed classes. Example: `<ActivityIndicator colorClassName="accent-blue-500" />` NOT `<ActivityIndicator className="text-blue-500" />`. Regular Tailwind color classes (like `text-blue-500`) only work on `className` (which maps to `style`). For non-style color props, always use `accent-`.
11. **rem default is 16px** — NativeWind used 14px. Set `polyfills: { rem: 14 }` in metro config if migrating.
12. **`cssEntryFile` must be a relative path string** — Use `'./global.css'` not `path.resolve(__dirname, 'global.css')`.
13. **Native follows the CSS cascade (Uniwind 1.13.0+ / Pro 1.9.0+)** — Conflicts resolve like in the browser: `!important`, then cascade layer, then selector specificity, then order in the compiled CSS. The order of classes inside `className` never matters. Tailwind utilities live in `@layer utilities`, so for normal (non-`!important`) declarations an unlayered custom class (`.card { border-radius: 12px }`) beats `rounded-2xl`. To let utilities override a custom class, declare it inside `@layer components { ... }`. `cn()` / `tailwind-merge` only dedupes Tailwind utilities against each other; it never removes a custom class like `card`.
14. **Important utilities are supported** — Tailwind important modifier works in classNames with `!` at the end: `bg-red-500!`, `active:bg-red-500!`, `ios:pt-12!`. Leading `!bg-red-500` syntax is deprecated. Important utilities override non-important utilities for the same style property, but inline `style` still overrides className.
## Reference Routing
Read only relevant bundled reference files under `references/` after identifying the user's task:
- Setup/config install issues: `references/setup.md`
- React Native component className props, accent color props, or component examples: `references/component-bindings.md`
- Third-party components, `withUniwind`, dynamic class names, `tailwind-variants`, `cn`, important utilities, or style precedence: `references/styling-patterns.md`
- Themes, CSS variables, `ScopedTheme`, `LayoutDirection`, color spaces, or runtime variable APIs: `references/theming.md`
- Platform, data, state, responsive, or safe-area utilities: `references/variants-and-selectors.md`
- CSS functions, custom CSS, `@utility`, `@theme`, fonts, or gradients: `references/css-and-utilities.md`
- React Navigation, UI kits, support matrix, or unsupported classes: `references/integrations.md`
- Uniwind Pro installation, animations, diagnostics, group variants, default styles, native insets, or theme transitions: `references/pro.md`
- Broken styles, setup diagnostics, errors, cache issues, FAQ answers, MCP, or related skills: `references/troubleshooting.md`
## Workflow
1. Identify whether user needs setup, styling, theming, variants, integrations, Pro, or troubleshooting help.
2. Read the matching reference file before giving detailed gExcerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 0894804
npm install react-native-nitro-modules react-native-reanimated react-native-worklets npm install tailwind-merge clsx
git clone https://github.com/uni-stack/uniwind git -C uniwind checkout 089480493fd1
Commands as the repository documents them: shown, never run by us. Our verdict covers commit 089480493fd1 only.
Works in which agents?
What its own text says, not a test
| Agent | Status | More |
|---|---|---|
| Cursor | Mentioned in its text, not tested | Skills for Cursor · About Cursor |
| Windsurf | Mentioned in its text, not tested | Skills for Windsurf · About Windsurf |
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
089480493fd1
README badge
For maintainers · shows the latest audit
[](https://modelsatlas.com/skills/uni-stack/uniwind/)
The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.
Similar skills
All coding & review skills →uni-stack/uniwind
Migrate a React Native project from NativeWind to Uniwind. Use when the user wants to replace NativeWind with Uniwind, upgrade from NativeWind, switch to Uniwind, or mentions NativeWind-to-Uniwind migration. Handles…
software-mansion/argent
Compare saved or live app screenshots with the argent screenshot-diff tool. Use when testing visual regressions, before/after UI comparisons, screenshot diff checks, visible layout, spacing, color, typography, clipping,…
software-mansion/argent
Record a video of an iOS simulator or Android emulator/device screen using argent MCP tools. Use when the user asks to record the screen, capture a video of a flow, interaction, or animation, produce a screen recording,…
software-mansion/argent
Optimizes a React Native app by profiling first to find real bottlenecks, then sweeping for mechanical issues. Entry-point for all performance work. Use when the app feels slow, user asks to optimize, fix re-renders,…
software-mansion/argent
Profile a React Native Hermes app to measure re-render and CPU performance using argent profiler tools. Use when optimizing for performance, measuring before/after a fix, spotting slow components, diagnosing re-renders,…
software-mansion/argent
Native profiling for CPU hotspots, UI hangs, memory issues. iOS via xctrace; Android via Perfetto. Use when diagnosing native-level performance issues.
Add this badge to your README
[](https://modelsatlas.com/skills/uni-stack/uniwind/)
<a href="https://modelsatlas.com/skills/uni-stack/uniwind/"><img src="https://modelsatlas.com/skills/uni-stack/uniwind/badge.svg" alt="ModelsAtlas: SAFE B"></a>
Questions about uniwind
What does the uniwind skill do?
Is uniwind safe to install?
What can uniwind access on my machine?
Which assistants does uniwind work with?
How current is this page?
Sources
- github.com/uni-stack/uniwind/tree/main/skills/uniwind — the audited source at commit 089480493fd1 and every finding aboveObserved · 21 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the uniwind skill do?
- Is uniwind safe to install?
- What can uniwind access on my machine?