Appearance
NPM Package Registry
Краткое описание
GitLab используется как приватный NPM-репозиторий для внутренних пакетов, включая утилиты, слои, общие компоненты и конфигурации. Это позволяет централизованно управлять зависимостями, исключить публикацию на сторонние реестры (например, npmjs.org), а также повысить безопасность и контроль доступа
Архитектура и организация пакетов
- Исходники каждого пакета (
@aceramica/nuxt-shared,@aceramica/layer-common) хранятся в отдельных GitLab-репозиториях внутриaceramica/frontend/common/... - Все пакеты публикуются в GitLab NPM Registry, активированном в проекте
shared-packages - Для публикации и установки пакетов в проекты используется
Project Access Tokenс правамиapiиread_api - Подключение и установка пакетов возможны из любого фронтенд-проекта, при наличии
.npmrcиNPM_TOKEN - Все пакеты используют namespace
@aceramica, например:@aceramica/nuxt-shared@aceramica/layer-common
Структура проектов с пакетами и хранилищем публикаций:
bash
aceramica/
├─ frontend/
│ ├─ common/
│ │ ├─ utils/
│ │ │ └─ nuxt-shared # код общих утилит для Nuxt
│ │ └─ layers/
│ │ └─ layer-common # код слоя общих компонентов для Nuxt
└─ shared-packages # хранилище публикаций npm-пакетов (GitLab NPM Registry)📝 Важно: несмотря на то, что исходники разбросаны по разным проектам, все пакеты публикуются в один репозиторий GitLab (
shared-packages), в котором активирован приватный реестр NPM-пакетов