Первый модуль
Создание модуля
Рекомендуем начать с стартового шаблона:
npm create nuxt -- -t module my-module
yarn create nuxt -t module my-module
pnpm create nuxt -t module my-module
bun create nuxt --template=module my-module
Будет создан проект my-module с заготовкой для разработки и публикации модуля.
Дальше:
- Откройте
my-moduleв IDE - Установите зависимости
- Подготовьте файлы для разработки:
npm run dev:prepare - Изучайте документацию по модулям Nuxt
Работа со стартовым шаблоном
Базовые действия с шаблоном модуля.
Разработка модуля
Исходный код модуля лежит в src, а для разработки обычно нужна Nuxt-приложение — для этого служит папка playground: в ней приложение, уже настроенное на ваш модуль.
С playground можно работать как с обычным Nuxt-приложением.
- Запуск dev-сервера:
npm run dev(изменения вsrcподхватываются) - Сборка:
npm run dev:build
nuxt можно запускать для playground (например nuxt <COMMAND> playground). В package.json можно добавить свои скрипты dev:*.Запуск тестов
В шаблоне есть базовый набор тестов:
Сборка модуля
Модули Nuxt собираются через @nuxt/module-builder. Конфигурация не требуется, поддерживается TypeScript, ассеты корректно упаковываются для распространения.
Сборка: npm run prepack.
Публикация в npm
npm login.Можно публиковать вручную (поднять версию и выполнить npm publish), но в шаблоне есть скрипт release, который проверяет и публикует модуль.
Использование: закоммитьте изменения (удобно с Conventional Commits для авто-версий и changelog), затем npm run release.
Скрипт release:
- Запускает тесты: lint, unit/integration/e2e, сборку модуля
- При успехе: поднимает версию и генерирует changelog по Conventional Commits, публикует в npm, пушит git-тег новой версии в origin
release в package.json можно настроить под себя.