Для разработчиков
Проверка кода (ESLint)
Правила Umbra в ESLint: что ловят и как подключить
npx shadcn@latest add @umbra/eslintОдин файл eslint.umbra.mjs без зависимостей. Плоский конфиг ESLint 9 (и ESLint 8.57 с eslint.config.js)
| Правило | Что ловит |
|---|---|
umbra/no-raw-color |
#fff, rgb(), bg-[#fff], text-zinc-500 в классах и style |
umbra/no-arbitrary-value |
p-[13px], rounded-[10px]; разрешено w-[var(--sidebar)] |
umbra/spacing-scale |
отступы вне шкалы 8 / 12 / 16 / 20 / 24 / 32 (p-7, gap-2.5) |
umbra/radius-scale |
rounded-lg, rounded и другие радиусы вне шкалы |
umbra/no-opacity-modifier |
bg-primary/50: в Tailwind 3.4 не работает с токенами |
umbra/no-foreign-icons |
lucide-react, react-icons, @heroicons/react и другие |
umbra/no-arrow-icons |
стрелки Phosphor Arrow* и любые *Arrow* (CloudArrowUp): направление только шевроном Caret* bold |
umbra/glass-layer |
предупреждение: backdrop-filter и стекло у плитки, стекло внутри стекла (классы umbra-glass*, glass*) |
umbra/phosphor-weight |
Phosphor без weight="fill", шеврон Caret* в заливке (треугольник), запрещённые *Circle, *Square |
Когда брать
В каждый продукт. Для постепенного перехода правила можно временно перевести в warn для старых папок
Когда не брать
Не нужен в проектах без интерфейса
У этого элемента нет живого примера: он ставит файлы или правила. Подключение во вкладке «Код»