55 lines
1.6 KiB
Markdown
55 lines
1.6 KiB
Markdown
# @gromlab/create
|
||
|
||
CLI-утилита для генерации файлов из шаблонов.
|
||
|
||
## Использование
|
||
|
||
```bash
|
||
npx @gromlab/create <шаблон> <имя> [опции]
|
||
```
|
||
|
||
## Пример
|
||
|
||
```bash
|
||
# Создать компонент из шаблона
|
||
npx @gromlab/create component Button
|
||
|
||
# Указать папку вывода
|
||
npx @gromlab/create component Button --out src/components
|
||
|
||
# Превью без записи
|
||
npx @gromlab/create component Button --dry-run
|
||
```
|
||
|
||
## Шаблоны
|
||
|
||
Шаблоны хранятся в папке `.templates/`. Каждая подпапка — отдельный шаблон.
|
||
|
||
```
|
||
.templates/
|
||
└── component/
|
||
├── {{name.pascal}}/
|
||
│ ├── index.ts
|
||
│ ├── {{name.pascal}}.tsx
|
||
│ └── {{name.pascal}}.module.css
|
||
```
|
||
|
||
### Переменные
|
||
|
||
В именах файлов и содержимом доступны переменные:
|
||
- `{{name}}` — исходное значение
|
||
- `{{name.pascal}}` — PascalCase
|
||
- `{{name.camel}}` — camelCase
|
||
- `{{name.kebab}}` — kebab-case
|
||
- `{{name.snake}}` — snake_case
|
||
|
||
## Опции
|
||
|
||
| Опция | Описание |
|
||
|-------|----------|
|
||
| `--out <путь>` | Папка вывода (по умолчанию: `.`) |
|
||
| `--templates <путь>` | Папка шаблонов (по умолчанию: `.templates`) |
|
||
| `--overwrite` | Перезаписать существующие файлы |
|
||
| `--dry-run` | Показать результат без записи |
|
||
| `--<переменная> <значение>` | Произвольная переменная шаблона |
|