# dev-configs Monorepo с общими конфигами для TypeScript-проектов. Публикуется как набор npm-пакетов в Gitea npm registry. ## Технологии - **Monorepo:** npm workspaces - **Сборка:** TypeScript (tsc) - **Registry:** Gitea npm (`@vigdorov/` scope) - **CI:** Drone CI, тип `library` ## Пакеты | Пакет | Тип | Описание | |-------|-----|----------| | `@vigdorov/prettier-config` | Статичный объект | Prettier конфиг | | `@vigdorov/eslint-config` | Функции-генераторы (base, react, node) | ESLint 9 flat config | | `@vigdorov/typescript-config` | JSON для extends (base.json, react.json) | TSConfig | | `@vigdorov/vite-config` | Функции-генераторы (spa, library) | Vite конфиг | | `@vigdorov/jest-config` | Функция-генератор (node/jsdom) | Jest + @swc/jest | | `@vigdorov/playwright-config` | Функция-генератор (CI-aware) | Playwright e2e | | `@vigdorov/knip-config` | Функция-генератор | Dead code detection | ## Структура ``` packages/ ├── eslint/ → @vigdorov/eslint-config ├── prettier/ → @vigdorov/prettier-config ├── typescript/ → @vigdorov/typescript-config (без сборки, JSON-файлы) ├── vite/ → @vigdorov/vite-config ├── jest/ → @vigdorov/jest-config ├── playwright/ → @vigdorov/playwright-config └── knip/ → @vigdorov/knip-config ``` ## Команды ```bash npm run build # Собрать все пакеты npm run test # Тесты всех пакетов npm run lint # Линтинг всех пакетов npm run check # Knip проверка всех пакетов # Поднятие версии npm version patch -w packages/eslint npm version minor -w packages/vite ``` ## Версионирование - Semver, независимое для каждого пакета - Разработка в feature-ветке → merge в main → поднять версию → push - CI публикует только пакеты с новой версией (сравнение с registry) ## Требования Полные требования: [docs/requirements.md](docs/requirements.md)