Создание шаблонов генерации
Структура шаблонов, синтаксис переменных и примеры.
Структура шаблонов
Все шаблоны лежат в .templates/ в корне проекта. Каждая папка — отдельный шаблон.
text
.templates/
├── component/ # шаблон компонента
│ └── {{name.kebabCase}}/
│ ├── styles/
│ │ └── {{name.kebabCase}}.module.css
│ ├── types/
│ │ └── {{name.kebabCase}}.type.ts
│ ├── {{name.kebabCase}}.tsx
│ └── index.ts
└── store/ # шаблон Zustand стора
└── {{name.kebabCase}}/
├── {{name.kebabCase}}.store.ts
├── {{name.kebabCase}}.type.ts
└── index.tsСинтаксис шаблонов
Переменные
Переменные работают в именах файлов/папок и внутри файлов:
text
{{variable}}Переменные могут быть любыми. name — дефолтная, подставляется генератором автоматически. Если реализация требует дополнительных параметров — можно использовать произвольные наборы переменных.
Модификаторы
Модификаторы меняют регистр и формат записи переменной:
text
{{name.pascalCase}} → MyButton
{{name.camelCase}} → myButton
{{name.kebabCase}} → my-button
{{name.snakeCase}} → my_button
{{name.screamingSnakeCase}} → MY_BUTTONКак создать новый шаблон
- Создать папку в
.templates/с именем шаблона (напримерhook). - Внутри разместить файлы и папки, используя
{{name}}и модификаторы в именах и содержимом. - Шаблон сразу доступен и в расширении VS Code, и в CLI.
Пример — создание шаблона для хука:
text
.templates/
└── hook/
└── {{name.kebabCase}}/
├── {{name.kebabCase}}.hook.ts
└── index.tsts
// .templates/hook/{{name.kebabCase}}.hook.ts
export const {{name.camelCase}} = () => {
}ts
// .templates/hook/index.ts
export { {{name.camelCase}} } from './{{name.kebabCase}}.hook'Дальше
- Использование — генерация через VS Code плагин и CLI.