{"_id":"@9ickpic/rerun","_rev":"4-ee47533c8047219aa172e3662fb49210","name":"@9ickpic/rerun","dist-tags":{"latest":"3.0.1"},"versions":{"2.0.1":{"name":"@9ickpic/rerun","version":"2.0.1","keywords":["react","cli","component-generator"],"author":{"name":"Yaroslav Selyutin moontesearch@gmail.com"},"license":"MIT","_id":"@9ickpic/rerun@2.0.1","maintainers":[{"name":"9ickpic","email":"moontesearch@gmail.com"}],"homepage":"https://github.com/9ickpic/rerun#readme","bugs":{"url":"https://github.com/9ickpic/rerun#issues"},"bin":{"rerun":"cli.js"},"dist":{"shasum":"fa00b89ea2c145d806684c3c55fc0b5a00e070ff","tarball":"https://registry.npmjs.org/@9ickpic/rerun/-/rerun-2.0.1.tgz","fileCount":9,"integrity":"sha512-f9Ybu/Ep14CyxH2rTlCw6YfcHGkVhCyRQUH1ToDm0c9dRo3Slw/4oynQEhBA9pDNgRE9r5QB8rmRKTHnLxgXJw==","signatures":[{"sig":"MEQCIB0MXDdJxrN086apPQaZlUmX49ABJ0Tvg11Terqj3/1FAiBqoi8HFyAImv5FQ2wF6K4FfsCtdgN5aJOEl9iJXW/Bgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20544},"gitHead":"5cb88c200e146986aef7d16c5a64ea0fec7d10d2","scripts":{"start":"node cli.js"},"_npmUser":{"name":"9ickpic","email":"moontesearch@gmail.com"},"_npmVersion":"11.3.0","description":"CLI-инструмент для быстрой настройки React-проектов","directories":{},"_nodeVersion":"23.9.0","dependencies":{"chalk":"^4.1.2","execa":"^5.1.1","fuse.js":"^6.6.2","fs-extra":"^10.1.0","inquirer":"^8.2.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/rerun_2.0.1_1745122825280_0.7676493915595679","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@9ickpic/rerun","version":"2.0.2","keywords":["react","cli","component-generator"],"author":{"name":"Yaroslav Selyutin moontesearch@gmail.com"},"license":"MIT","_id":"@9ickpic/rerun@2.0.2","maintainers":[{"name":"9ickpic","email":"moontesearch@gmail.com"}],"homepage":"https://github.com/9ickpic/rerun#readme","bugs":{"url":"https://github.com/9ickpic/rerun#issues"},"bin":{"rerun":"cli.js"},"dist":{"shasum":"bf97a7c0af0087bb32f106d5b81bfd9263b8bec9","tarball":"https://registry.npmjs.org/@9ickpic/rerun/-/rerun-2.0.2.tgz","fileCount":12,"integrity":"sha512-7q0GWayzhTexv+ySNZKzNF05jlEApCeB9klCBtPvSMc9rkOpA+G0P45jqwtmH7dF7X4yTHmIKBTjoIzhhzw1iw==","signatures":[{"sig":"MEYCIQDACV6lDvWMFeaQizNGRTx+zybWNRjAJVvKVY42nbr3IAIhAOQjm2h8dWbqBAEdqAaRR4orYfnFp+2fnC2ZDiP7DnxW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":345602},"gitHead":"252f6e5b8851f2f55bd60570caff4edcc9ba364c","scripts":{"start":"node cli.js"},"_npmUser":{"name":"9ickpic","email":"moontesearch@gmail.com"},"_npmVersion":"11.3.0","description":"CLI-инструмент для быстрой настройки React-проектов","directories":{},"_nodeVersion":"23.9.0","dependencies":{"chalk":"^4.1.2","execa":"^5.1.1","fuse.js":"^6.6.2","fs-extra":"^10.1.0","inquirer":"^8.2.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/rerun_2.0.2_1745124831163_0.38015891743913266","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@9ickpic/rerun","version":"3.0.0","keywords":["react","cli","component-generator"],"author":{"name":"Yaroslav Selyutin moontesearch@gmail.com"},"license":"MIT","_id":"@9ickpic/rerun@3.0.0","maintainers":[{"name":"9ickpic","email":"moontesearch@gmail.com"}],"homepage":"https://github.com/9ickpic/rerun#readme","bugs":{"url":"https://github.com/9ickpic/rerun#issues"},"bin":{"rerun":"cli.js"},"dist":{"shasum":"bed9aed9e2a435917d25dd12eb73ed39a2640df3","tarball":"https://registry.npmjs.org/@9ickpic/rerun/-/rerun-3.0.0.tgz","fileCount":12,"integrity":"sha512-mHh1YplQ2X1cKim1ZAo92yWTu9RPP/K8gQnGQyZQF4AHDIc8+TrYfANyNNz2wNFXp6sjRiHUnCDH3qd7RLlTag==","signatures":[{"sig":"MEQCIE1rAvynMyNUgRHg/v3N4ev10BbGxgMfrJzCdSZtmvvgAiBe/7JwDCvWj21USZgJt/KS4ClTFl02GGB87m4ibHdIPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":365801},"gitHead":"e6310e6a9e81182ef6d151221135d68538e89767","scripts":{"start":"node cli.js"},"_npmUser":{"name":"9ickpic","email":"moontesearch@gmail.com"},"_npmVersion":"11.3.0","description":"CLI-инструмент для быстрой настройки React-проектов","directories":{},"_nodeVersion":"23.9.0","dependencies":{"chalk":"^4.1.2","execa":"^5.1.1","fuse.js":"^6.6.2","fs-extra":"^10.1.0","inquirer":"^8.2.4","commander":"^13.1.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/rerun_3.0.0_1745157157150_0.5493233714715267","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@9ickpic/rerun","version":"3.0.1","description":"CLI-инструмент для быстрой настройки React-проектов","bin":{"rerun":"cli.js"},"scripts":{"start":"node cli.js"},"keywords":["react","cli","component-generator"],"dependencies":{"chalk":"^4.1.2","commander":"^13.1.0","execa":"^5.1.1","fs-extra":"^10.1.0","fuse.js":"^6.6.2","inquirer":"^8.2.4"},"author":{"name":"Yaroslav Selyutin moontesearch@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/9ickpic/rerun#issues"},"homepage":"https://github.com/9ickpic/rerun#readme","_id":"@9ickpic/rerun@3.0.1","gitHead":"77aad6cd83a517bbce738baf5178e09d31b9f253","_nodeVersion":"23.9.0","_npmVersion":"11.3.0","dist":{"integrity":"sha512-rBqlr3UK9orE+ckyrVtGMVwLMLQuocMVxJJsenCDBSnqRDyOgu1bW5Eeeq/yAdJa238OJWovW7MtOUb8pCZoPQ==","shasum":"837a46e2c24936a6868689712d2b28c870c1fcd7","tarball":"https://registry.npmjs.org/@9ickpic/rerun/-/rerun-3.0.1.tgz","fileCount":12,"unpackedSize":368657,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCvxP5W6nclEoZbQcdcILY9hw/4VewcWXhxVvMbn7l/3QIgUflKXD0MY6bNUuhBCf087fKvnw1i1PL5AX2qSOh3VZo="}]},"_npmUser":{"name":"9ickpic","email":"moontesearch@gmail.com"},"directories":{},"maintainers":[{"name":"9ickpic","email":"moontesearch@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rerun_3.0.1_1745165023412_0.30938750894314127"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-20T04:20:24.912Z","modified":"2025-04-20T16:03:43.828Z","2.0.1":"2025-04-20T04:20:25.459Z","2.0.2":"2025-04-20T04:53:51.405Z","3.0.0":"2025-04-20T13:52:37.462Z","3.0.1":"2025-04-20T16:03:43.652Z"},"bugs":{"url":"https://github.com/9ickpic/rerun#issues"},"author":{"name":"Yaroslav Selyutin moontesearch@gmail.com"},"license":"MIT","homepage":"https://github.com/9ickpic/rerun#readme","keywords":["react","cli","component-generator"],"description":"CLI-инструмент для быстрой настройки React-проектов","maintainers":[{"name":"9ickpic","email":"moontesearch@gmail.com"}],"readme":"# reRun CLI\n\n![reRun CLI Banner](reRun-package.png)\n\n**reRun** — мощный и интуитивный инструмент командной строки (CLI) для упрощения создания, настройки и управления React-проектами, а также проектами с бэкендом. С `reRun` вы можете быстро создавать React-приложения, генерировать компоненты с семантической структурой, настраивать бэкенд на Node.js (Express, NestJS) или Python (FastAPI, Django) и управлять зависимостями.\n\n## Возможности\n\n- **Создание React-проекта**: Инициализация нового React-проекта с использованием `create-react-app`, настройка SCSS и чистой структуры (`App.jsx`, `index.jsx`).\n- **Создание проектов с бэкендом**: Поддержка создания монолитных репозиториев, бэкенд-приложений (Express, NestJS, FastAPI, Django) или фронтенд-приложений.\n- **Генерация компонентов**: Создание React-компонентов с файлами:\n  - `*.jsx` — логика компонента.\n  - `*.module.scss` — модульные стили.\n  - `*.test.js` — тесты для Jest.\n  - **Семантические теги**: Использование HTML-тегов (`<header>`, `<section>`, `<article>`, `<nav>`, `<main>`, `<footer>`, `<aside>`) для компонентов с соответствующими именами (например, `Header`, `Section`). При использовании Framer Motion — `<motion.div>`.\n  - Опциональная поддержка анимаций с Framer Motion.\n- **Очистка проекта**: Удаление стандартных файлов `create-react-app` и создание чистой структуры с `App.jsx`, `index.jsx`, `App.scss`, `index.scss`.\n- **Управление зависимостями**: Интерактивная установка пакетов (например, `tailwindcss`, `eslint`, `framer-motion`) с автоматической настройкой.\n- **Список зависимостей**: Просмотр установленных пакетов в проекте.\n- **Красивый вывод**: Цветной и информативный вывод в консоли с использованием `chalk`.\n- **Безопасность**: Проверка существующих файлов перед перезаписью при генерации компонентов.\n- **Расширяемость**: Легкая адаптация для поддержки TypeScript, новых шаблонов или дополнительных технологий.\n\n## Установка\n\n### Требования\n\n- [Node.js](https://nodejs.org/) (версия 16 или выше)\n- [npm](https://www.npmjs.com/) или [yarn](https://yarnpkg.com/)\n- [Python](https://www.python.org/) (версия 3.8 или выше, для бэкендов FastAPI/Django)\n\n### Установка через npm\n\n```bash\nnpm install -g @9ickpic/rerun\n```\n\n### Установка напрямую с GitHub\n\n```bash\nnpm install -g 9ickpic/rerun\n```\n\n## Использование\n\nДля просмотра доступных команд выполните:\n\n```bash\nrerun --help\n```\n\n### Команды\n\n- **`create`**: Создание нового React-проекта или добавление компонента (бэкенд/фронтенд).\n\n  ```bash\n  rerun create\n  rerun create backend\n  rerun create frontend\n  ```\n\n  Создает React-проект с использованием `create-react-app` в текущей директории (должна быть пустой). При указании `backend` или `frontend` добавляет соответствующий компонент в существующий проект. Настраивает SCSS и базовые файлы (`App.jsx`, `index.jsx`).\n\n- **`create-project`**: Создание нового проекта с выбором типа (монолитный репозиторий, бэкенд или фронтенд).\n\n  ```bash\n  rerun create-project\n  ```\n\n  Запрашивает тип проекта:\n\n  - **Monorepositories**: Создает проект с бэкендом и фронтендом.\n  - **Backend**: Создает бэкенд на Express, NestJS, FastAPI или Django.\n  - **Frontend**: Создает React-приложение.\n\n- **`generate`**: Генерация нового React-компонента.\n\n  ```bash\n  rerun generate\n  ```\n\n  Запрашивает:\n\n  - Имя компонента (в формате PascalCase, например, `Header`, `Modal`).\n  - Использовать ли Framer Motion для анимаций.\n\n  Создает файлы в `src/components/ComponentName/`:\n\n  - `ComponentName.jsx`\n  - `ComponentName.module.scss`\n  - `ComponentName.test.js`\n\n  Если файлы уже существуют, запрашивает подтверждение перезаписи.\n\n- **`clean`**: Очистка директории `src/` до начального состояния.\n\n  ```bash\n  rerun clean\n  ```\n\n  Удаляет стандартные файлы `create-react-app` и создает `App.jsx`, `index.jsx`, `App.scss`, `index.scss`.\n\n- **`add`**: Интерактивная установка пакета.\n\n  ```bash\n  rerun add\n  ```\n\n  Позволяет искать и устанавливать пакеты (например, `tailwindcss`, `eslint`) с автоматической настройкой.\n\n- **`init`**: Инициализация проекта с выбором зависимостей.\n\n  ```bash\n  rerun init\n  ```\n\n  Предлагает выбрать пакеты из категорий (иконки, утилиты, анимации, линтеры, дополнительные) и устанавливает их с настройкой.\n\n- **`list`**: Просмотр установленных зависимостей.\n\n  ```bash\n  rerun list\n  ```\n\n  Выводит список зависимостей из `package.json`.\n\n### Пример\n\n#### Генерация компонента `Header`:\n\n```bash\nrerun generate\n```\n\n```\n? Введите название компонента (PascalCase): Header\n? Использовать Framer Motion для анимаций? Нет\n📍 Текущая рабочая директория: /path/to/your-project\n📁 Директория src создана или уже существует\n📁 Директория src/components/Header создана или уже существует\n📝 Компонент Header.jsx создан по пути src/components/Header/Header.jsx\n📝 Файл Header.module.scss создан по пути src/components/Header/Header.module.scss\n📝 Файл Header.test.js создан по пути src/components/Header/Header.test.js\n🎉 Генерация компонента завершена\n```\n\nСозданный `Header.jsx`:\n\n```jsx\nimport React from 'react';\nimport styles from './Header.module.scss';\n\nfunction Header() {\n\treturn <header className={styles.container}></header>;\n}\n\nexport default Header;\n```\n\n#### Создание проекта с бэкендом и фронтендом:\n\n```bash\nrerun create-project\n```\n\n```\n? Выберите тип проекта: Monorepositories\n? Выберите технологию для бэкенда: Node.js (Express)\n⚙️ Создание monorepo...\n📁 Создана директория backend\n⚙️ Настройка Node.js бэкенда (Express)...\n📝 Создан package.json\n📝 Создан index.js\n📦 Установка Node.js зависимостей...\n✅ Зависимости успешно установлены\n⚙️ Создание фронтенда...\n📁 Создана директория frontend\n⚙️ Выполняется npx create-react-app...\n🧹 Очистка шаблона Create React App...\n📝 Обновлен файл App.jsx\n📝 Обновлен файл index.jsx\n📝 Создан файл App.scss\n🎉 Шаблон Create React App успешно очищен\n🚀 Запуск инициализации проекта...\n📋 Выберите пакеты для установки:\n...\n🎉 Проект успешно создан и настроен!\n```\n\n## Вклад в проект\n\nЧтобы внести свой вклад:\n\n1. Сделайте форк репозитория ([https://github.com/9ickpic/rerun](https://github.com/9ickpic/rerun)).\n2. Создайте новую ветку (`git checkout -b feature/your-feature`).\n3. Внесите изменения.\n4. Зафиксируйте изменения (`git commit -m \"Добавлена новая функция\"`).\n5. Отправьте ветку в репозиторий (`git push origin feature/your-feature`).\n6. Откройте Pull Request.\n\n## Лицензия\n\nПроект распространяется под лицензией MIT. Подробности в файле [LICENSE](LICENSE).\n\n## Проблемы и предложения\n\nОбнаружили ошибку или хотите предложить новую функцию? Создайте issue на [странице GitHub Issues](https://github.com/9ickpic/rerun/issues).\n\n## Контакты\n\nПо вопросам или отзывам свяжитесь с [Ярославом](mailto:moontesearch@gmail.com) или создайте issue на GitHub.\n\n---\n\nСоздано с ❤️ [9ickpic](https://github.com/9ickpic)\n","readmeFilename":"README.markdown"}