Что такое shadcn/ui
shadcn/ui — не обычная библиотека компонентов, которую просто подключают как зависимость. Его идея в другом: команда копирует исходный код компонентов в свой проект, настраивает его под себя и постепенно строит собственную библиотеку интерфейса.
Компоненты опираются на React, Tailwind CSS, Radix UI/Base UI и современные сборки вроде Next.js или Vite. Такой подход стал популярным, потому что даёт готовую основу, но не запирает команду внутри чужого пакета и чужих стилей.
Что внутри и как это используют
Добавление компонента
Пример показывает характер проекта и его обычную форму использования.
npx shadcn@latest add button
# компонент появится в проекте, и его можно менять как свой код
Внутри репозитория — сайт документации, исходники компонентов, утилиты распространения кода, примеры и поддержка разных окружений. Для пользователя главный результат — не npm-пакет, а файлы компонентов в собственной кодовой базе.
Сильные стороны и ограничения
Сильная сторона — контроль над кодом и хорошая начальная эстетика. Ограничения — ответственность за поддержку переходит к команде: после копирования компонент нужно обновлять, адаптировать и не превращать локальную библиотеку в хаотичный набор правок.