Skip to content

Шаблоны генерации

Папка .templates/ в корне проекта для генератора модулей @gromlab/create.

Синтаксис шаблонов и работа генератора — Шаблоны и генерация кода.

Требования

  • Доступен npx (ставится вместе с npm).
  • Доступ к gromlab.ru (SSH-ключ добавлен) — для скачивания эталонного набора.

Развилка

Сценарий зависит от состояния проекта:

СостояниеЧто делать
В корне проекта нет .templates/Скачать стандартный набор
.templates/ есть, нужен новый специфический шаблонСоздать шаблон вручную
.templates/ есть, нужно обновить до эталонаСкачать заново с подтверждением перезаписи

Скачать стандартный набор

Установка

  1. Проверить, что .templates/ отсутствует (или согласовать перезапись, если папка уже есть).

  2. Скачать папку из эталонного репозитория:

    bash
    npx tiged git@gromlab.ru:templates/nextjs-template.git/.templates .templates
  3. Если tiged падает в default-режиме (HTTP-tarball у Gitea) — повторить с явным git-режимом:

    bash
    npx tiged --mode=git git@gromlab.ru:templates/nextjs-template.git/.templates .templates
  4. Проверить генерацию:

    bash
    npx @gromlab/create component test-widget src/ui

    После проверки — удалить тестовый модуль.

Правила

  • Скачанные файлы не править. Источник истины — репозиторий templates/nextjs-template. Изменения стандартных шаблонов делаются в нём, не в отдельных проектах.
  • Расположение — только .templates/ в корне проекта. Это требование расширения VS Code и CLI (Шаблоны и генерация кода).
  • Если доступа к gromlab.ru нет — не восстанавливать содержимое из памяти: разойдётся с каноном. Запросить шаблоны иным путём.

Создать шаблон вручную

Если стандартного набора недостаточно и нужен специфический шаблон под проект.

Установка

  1. Прочитать Шаблоны и генерация кода — секции «Структура шаблонов», «Синтаксис шаблонов», «Как создать новый шаблон».

  2. Определить:

    • имя шаблона (папка внутри .templates/);
    • состав файлов;
    • слой SLM предполагаемых потребителей (Архитектура: слои);
    • минимальное содержимое каждого файла.
  3. Проверить, что имя шаблона не конфликтует с существующей папкой в .templates/.

  4. Создать структуру .templates/{name}/ по канону из Шаблоны и генерация кода — синтаксис переменных, правила именования файлов и содержимого.

  5. Проверить генерацию:

    bash
    npx @gromlab/create {name} test-entity {целевой путь}

    После проверки — удалить тестовый артефакт.

Правила

  • Если запрос покрыт стандартными шаблонами (component, widget, store, layout, screen, business) — не создавать копию.
  • Стандартные шаблоны не трогать. Правка стандарта — задача репозитория templates/nextjs-template, не отдельного проекта.
  • Синтаксис переменных, правила регистра, минимальный boilerplate — в Шаблоны и генерация кода. Здесь не дублируется.

Общие правила

  • VS Code-расширение gromlab.vscode-templateFileGenerator устанавливается разово на машину разработчика, а не через этот раздел (Шаблоны и генерация кода).
  • CLI @gromlab/create вызывается через npx, в package.json отдельно не добавляется.
  • Менеджер пакетов (npm/pnpm/yarn/bun) не влияет: tiged и @gromlab/create запускаются через npx.

Проверка установки

  • В корне проекта есть папка .templates/.
  • Внутри .templates/ присутствуют стандартные шаблоны (или согласованный кастомный набор).
  • В корне проекта нет каталогов .git/ и .github/ из репозитория-шаблона.
  • Пробная генерация через npx @gromlab/create ... отрабатывает без ошибок.

Дальше