Перевод страницы с английского оригинала. При расхождениях приоритет имеет английская версия.
Установка
DaloyJS рассчитан на Node.js 24 LTS или Node.js 26 и новее (engines.node: ^24.0.0 || >=26.0.0) и распространяется через публичный реестр npm как @daloyjs/core. У пакета нет peer-зависимостей, поэтому npm, yarn, pnpm и bun устанавливают его напрямую. Из соображений безопасности цепочки поставок мы рекомендуем pnpm вместе с усиленными настройками .npmrc, приведёнными ниже, но это не обязательно. Поле engines.pnpm в package.json носит справочный характер, а engines.node указывает поддерживаемый рантайм и в зависимости от менеджера пакетов и настройки engine-strict может выдать предупреждение или ошибку.
- 01быстрее всегоСоздать проектpnpm create daloy@latest
- 02илиУстановить в существующий проектpnpm add @daloyjs/core zod
- 03усилитьДобавить настройки .npmrcstrict-peer-dependencies, замороженный lockfile
- 04проверитьПроверить импортnode -e import('@daloyjs/core')
Самый быстрый путь: создайте проект
Воспользуйтесь официальным генератором: одной командой он настроит усиленный .npmrc, строгий TypeScript и рабочий маршрут.
Ссылки на пакеты: create-daloy в npm и @daloyjs/core в npm.
Шаблоны и флаги описаны в Scaffold a project (на английском).
Или установите в существующий проект
Требования
- Node.js 24 LTS, либо 26.0.0 и новее (Node.js 25 не поддерживается).
- Менеджер пакетов. Подойдёт любой из перечисленных; для защиты цепочки поставок рекомендуется pnpm 11.x или новее, но
npm,yarnиbunбез проблем устанавливают@daloyjs/core, ведь у пакета нет peer-зависимостей.
Чтобы включить pnpm через Corepack:
Установите DaloyJS
Необязательно, только если вы хотите генерировать типизированный SDK:
Пакет фреймворка, опубликованный в npm: @daloyjs/core.
Усиленные настройки установки
В pnpm 11+ размещайте настройки цепочки поставок в pnpm-workspace.yaml в корне проекта (ключи в camelCase; pnpm 11 читает этот файл даже в проекте из одного пакета). pnpm 11 игнорирует эти настройки в .npmrc, поэтому конфигурация только через .npmrc остаётся без периода ожидания и без политики скриптов.
Для npm и более старых версий pnpm продублируйте те же значения в .npmrc:
Период ожидания и ignoreScripts снижают риски цепочки поставок для этих установок, но не останавливают все атаки. ignoreScripts блокирует вредоносную нагрузку в скриптах установки, но не код, выполняемый при импорте пакета, а 24-часовой период ожидания защищает лишь от компрометаций, обнаруженных менее чем за сутки.
Подробные причины изложены в разделе Безопасность и в руководстве о мотивации pnpm.
Проверьте установку
Запустите это из корня проекта после установки; команда работает одинаково в pnpm, npm, yarn и bun, потому что вызывает node напрямую:
Следующий шаг
create-daloy подготовит для вас защищённый проект.Последнее обновление: