Руководство пользователя-разработчика по эксплуатации экземпляра программного обеспечения «DevLink StateCore»

ООО «АЙТИ ДЕВ ЛИНК»

Документация, содержащая информацию, необходимую для эксплуатации экземпляра программного обеспечения, предоставленного для проведения экспертной проверки

Версия экземпляра: 1.0.3
Российская Федерация, 2026

Сведения о документе

ПоказательЗначение
ПравообладательООО «АЙТИ ДЕВ ЛИНК»
Наименование программы для ЭВМDevLink StateCore
Наименование npm-пакетаdevlink-statecore
Версия экземпляра1.0.3
Страница правообладателяhttps://itdevlink.ru/products/devlink-statecore
Экземпляр ПО для экспертной проверкиnpm-пакет devlink-statecore версии 1.0.3, доступный для установки из npm registry
Условия использованияБесплатное использование
Назначение пользователяРазработчик или эксперт, подключающий библиотеку к JavaScript/TypeScript-проекту

Настоящий документ является руководством пользователя-разработчика и содержит информацию, необходимую для эксплуатации экземпляра программы для ЭВМ «DevLink StateCore» версии 1.0.3, предоставленного для проведения экспертной проверки.

Документ раскрывает местонахождение экземпляра ПО, состав инсталлируемых компонентов, порядок загрузки, установки, запуска, выполнения и завершения работы, формат команд, возможные варианты команд, ожидаемые ответы программы и действия при типовых ошибочных ситуациях.

Поскольку «DevLink StateCore» является программной библиотекой, а не самостоятельным веб-сервисом или приложением с графическим интерфейсом, эксплуатация экземпляра выполняется путем установки npm-пакета в тестовый JavaScript/TypeScript-проект и запуска контрольного сценария через среду выполнения Node.js.

1. Назначение программного обеспечения

«DevLink StateCore» — программная библиотека для JavaScript/TypeScript-проектов, предназначенная для управления состоянием приложений. Библиотека предоставляет разработчику средства создания хранилища состояния, получения текущего состояния и обновления состояния приложения через программный интерфейс.

Основные эксплуатационные функции экземпляра ПО:

  • создание объекта хранилища состояния приложения;
  • получение текущего значения состояния;
  • изменение состояния через API библиотеки;
  • подписка на изменения состояния для реакции на обновления;
  • использование производных значений состояния в логике приложения;
  • расширение обработки изменений через middleware-механизм;
  • подключение библиотеки в JavaScript/TypeScript-проект без собственной серверной инфраструктуры.

Экземпляр ПО не содержит пользовательского интерфейса, административной панели, серверной части, СУБД, встроенного механизма авторизации или системы лицензионных ключей. Управление выполнением программы осуществляется разработчиком через команды npm/Node.js и вызовы API библиотеки в исходном коде приложения.

2. Состав экземпляра ПО и место нахождения

Для экспертной проверки предоставляется инсталлируемый npm-компонент:

КомпонентОписание
devlink-statecore@1.0.3npm-пакет, содержащий распространяемый экземпляр библиотеки «DevLink StateCore» версии 1.0.3
package.jsonслужебный файл npm-пакета с метаданными и сведениями о точке входа пакета
READMEсправочная документация пакета, размещаемая вместе с npm-пакетом
JavaScript/TypeScript-файлы библиотекифайлы, подключаемые в проект пользователя после установки npm-пакета

Страница правообладателя, на которой размещены сведения о программном обеспечении:

https://itdevlink.ru/products/devlink-statecore

Страница npm-пакета для получения экземпляра ПО:

https://www.npmjs.com/package/devlink-statecore

Прямая ссылка на версию экземпляра для экспертной проверки:

https://www.npmjs.com/package/devlink-statecore/v/1.0.3

3. Требования к среде эксплуатации

Для установки и эксплуатации экземпляра ПО в тестовой среде требуется стандартная среда разработки JavaScript/TypeScript-проектов.

СредствоНазначениеТребование
Операционная системазапуск терминала и среды Node.jsWindows, Linux, macOS или иная ОС, поддерживающая Node.js и npm
Node.jsсреда выполнения JavaScript-кодаактуальная LTS-версия Node.js либо иная совместимая версия, установленная у эксперта
npmпакетный менеджер для загрузки и установки npm-пакетаустанавливается вместе с Node.js либо отдельно
Терминал/командная строкавыполнение команд установки и запускаPowerShell, cmd, bash, zsh или аналогичный терминал
Текстовый редакторсоздание контрольного файла index.mjsлюбой редактор кода или текстовый редактор
Доступ к сети Интернетзагрузка npm-пакета из npm registryтребуется при установке из публичного npm registry

Минимальная версия Node.js в публичных сведениях о пакете отдельно не зафиксирована. Для экспертной проверки рекомендуется использовать актуальную LTS-версию Node.js. При наличии ограничений в конкретной среде эксперт может использовать иной установленный вариант Node.js, совместимый с JavaScript-модулями и npm.

4. Порядок загрузки экземпляра ПО

Загрузка экземпляра ПО выполняется одним из двух способов: прямой установкой пакета в тестовый проект или предварительным получением npm-архива пакета с последующей установкой из локального файла.

4.1. Вариант 1. Прямая установка из npm registry

Основной вариант загрузки и установки экземпляра ПО:

npm install devlink-statecore@1.0.3

Ожидаемый ответ: команда завершается без ошибки, в тестовом проекте появляется зависимость devlink-statecore версии 1.0.3, создается или обновляется каталог node_modules и файл package-lock.json.

4.2. Вариант 2. Получение инсталлируемого npm-архива

При необходимости эксперт может получить набор инсталлируемых компонентов в виде npm-архива:

npm pack devlink-statecore@1.0.3

Ожидаемый ответ: в текущем каталоге создается архив пакета с именем вида devlink-statecore-1.0.3.tgz. После этого пакет может быть установлен из локального архива:

npm install ./devlink-statecore-1.0.3.tgz

Оба варианта приводят к установке одного и того же экземпляра библиотеки версии 1.0.3.

5. Пошаговый сценарий эксплуатации для экспертной проверки

Ниже приведена полная последовательность действий, обеспечивающая загрузку, запуск, выполнение и завершение программы в тестовой среде.

Шаг 1. Создание тестового каталога

Создать отдельный каталог для проверки и перейти в него.

mkdir statecore-check
cd statecore-check

Ожидаемый результат: Создан каталог statecore-check, текущая рабочая директория изменена на него.

Шаг 2. Инициализация тестового npm-проекта

Создать минимальный package.json для установки npm-пакета.

npm init -y

Ожидаемый результат: Создан файл package.json с базовыми параметрами проекта.

Шаг 3. Установка экземпляра ПО

Установить библиотеку DevLink StateCore версии 1.0.3.

npm install devlink-statecore@1.0.3

Ожидаемый результат: Пакет devlink-statecore добавлен в зависимости проекта.

Шаг 4. Проверка установленной версии

Убедиться, что установлена версия 1.0.3.

npm list devlink-statecore

Ожидаемый результат: В дереве зависимостей отображается devlink-statecore@1.0.3.

Шаг 5. Создание контрольного файла

Создать файл index.mjs и поместить в него контрольный сценарий из раздела 6 настоящего документа.

Действие: Создать файл index.mjs

Ожидаемый результат: Файл index.mjs создан в тестовом каталоге.

Шаг 6. Запуск контрольного сценария

Запустить контрольный сценарий через Node.js.

node index.mjs

Ожидаемый результат: В консоль выводятся ожидаемые значения состояния; выполнение завершается без ошибки.

Шаг 7. Завершение эксплуатации

Завершение происходит автоматически после окончания выполнения Node.js-скрипта. Отдельный серверный процесс библиотекой не запускается.

Действие: Завершение процесса node после выполнения сценария

Ожидаемый результат: Процесс Node.js завершается, фоновых процессов библиотеки не остается.

Шаг 8. Удаление экземпляра из тестового проекта

При необходимости удалить библиотеку из тестового проекта.

npm uninstall devlink-statecore

Ожидаемый результат: Пакет удален из зависимостей проекта.

6. Контрольный сценарий выполнения программы

Для проверки работы установленного экземпляра ПО необходимо создать файл index.mjs со следующим содержимым:

import { createStore } from "devlink-statecore";

const store = createStore({ count: 0 });

console.log("initial:", JSON.stringify(store.getState()));

store.setState((state) => ({
  count: state.count + 1
}));

console.log("after update:", JSON.stringify(store.getState()));

Запуск контрольного сценария выполняется командой:

node index.mjs

Ожидаемый ответ программы в консоли:

initial: {"count":0}
after update: {"count":1}

Если указанный результат получен, экземпляр ПО установлен, подключен и выполняет базовые операции управления состоянием: создание хранилища, чтение состояния и обновление состояния.

7. Описание функций и программного интерфейса

В рамках эксплуатации библиотеки пользователь-разработчик управляет выполнением ПО через программный интерфейс библиотеки. Основные функции, необходимые для экспертной проверки, приведены ниже.

Функция/операцияФормат вызоваВходные данныеОтвет/результат
Создание хранилища состоянияcreateStore(initialState)initialState — начальное состояние приложения в виде объекта JavaScriptэкземпляр store, через который выполняются операции получения и изменения состояния
Получение текущего состоянияstore.getState()не требует параметровтекущий объект состояния
Обновление состоянияstore.setState(updater)updater — функция, принимающая текущее состояние и возвращающая новое состояниесостояние хранилища обновляется; последующие вызовы getState возвращают новое значение
Подписка на изменения состоянияstore.subscribe(listener)listener — функция-обработчик изменения состоянияпосле изменения состояния вызывается функция-подписчик; при наличии возвращаемой функции она используется для отмены подписки
Производные значения состоянияиспользуются на основе текущего состояния, получаемого через API библиотекитекущее состояние приложения и пользовательская функция вычислениязначение, рассчитанное на основе актуального состояния
Middleware-обработканастраивается в соответствии с API библиотеки при создании/конфигурации хранилищафункция промежуточной обработки изменений состояниядополнительная логика при обновлении состояния, например логирование или контроль изменений

Для целей первичной экспертной проверки достаточным является выполнение контрольного сценария из раздела 6, так как он подтверждает возможность загрузки, запуска и выполнения базового функционала экземпляра ПО.

8. Формат команд и ожидаемые ответы

КомандаНазначениеФормат / параметрыОжидаемый ответ
node --versionПроверка наличия Node.jsnode --versionВывод версии Node.js, например v20.x.x или иной установленной версии
npm --versionПроверка наличия npmnpm --versionВывод версии npm
mkdir statecore-checkСоздание тестового каталогаmkdir <имя_каталога>Каталог создан без ошибки
cd statecore-checkПереход в тестовый каталогcd <имя_каталога>Текущий каталог изменен
npm init -yСоздание package.jsonnpm init -yФайл package.json создан автоматически
npm install devlink-statecore@1.0.3Загрузка и установка экземпляра ПОnpm install <имя_пакета>@<версия>Пакет установлен; команда завершается без ошибки
npm pack devlink-statecore@1.0.3Получение инсталлируемого архиваnpm pack <имя_пакета>@<версия>Создан архив devlink-statecore-1.0.3.tgz
npm list devlink-statecoreПроверка установленной версииnpm list <имя_пакета>В списке зависимостей отображается devlink-statecore@1.0.3
node index.mjsЗапуск контрольного сценарияnode <имя_файла>.mjsВывод строк initial и after update с ожидаемыми значениями состояния
npm uninstall devlink-statecoreУдаление экземпляра ПО из тестового проектаnpm uninstall <имя_пакета>Пакет удален из зависимостей проекта

9. Завершение работы программы

«DevLink StateCore» не запускает самостоятельный серверный процесс и не создает отдельную службу операционной системы. Выполнение библиотеки происходит внутри процесса JavaScript/TypeScript-приложения, которое ее подключило.

В контрольном сценарии завершение работы происходит после окончания выполнения команды node index.mjs. После завершения процесса Node.js отдельные действия по остановке библиотеки не требуются.

Если библиотека используется в составе прикладного проекта, завершение эксплуатации происходит вместе с завершением соответствующего приложения. Удаление экземпляра из тестового проекта выполняется командой:

npm uninstall devlink-statecore

10. Учетные данные и доступы

Для эксплуатации экземпляра ПО логин и пароль не требуются. Программа не содержит пользовательских учетных записей, административной панели, закрытой серверной части или механизма авторизации пользователей.

Для установки из публичного npm registry не требуются учетные данные правообладателя. Если эксперт использует частный npm registry или корпоративный прокси, настройки доступа к такому registry выполняются средствами его собственной инфраструктуры и не относятся к функционалу «DevLink StateCore».

11. Типовые ошибочные ситуации и действия пользователя

Ситуация / сообщениеВозможная причинаДействия пользователя
node: command not found / node не является командойNode.js не установлен или не добавлен в PATHУстановить Node.js актуальной LTS-версии или проверить переменную PATH
npm: command not found / npm не является командойnpm не установлен или не добавлен в PATHУстановить npm вместе с Node.js либо проверить корректность установки
npm install завершается сетевой ошибкойНет доступа к npm registry, блокировка сети или проксиПроверить интернет-доступ, настройки proxy/registry; при необходимости использовать npm pack/локальный архив
No matching version found for devlink-statecore@1.0.3Указанная версия недоступна в используемом registryПроверить, что используется публичный npm registry, и повторить установку версии 1.0.3
Cannot find package devlink-statecore / Cannot find moduleПакет не установлен в текущий тестовый проектВыполнить npm install devlink-statecore@1.0.3 в каталоге проекта и проверить npm list devlink-statecore
Cannot use import statement outside a moduleФайл запущен не как ES-модульИспользовать файл с расширением .mjs либо настроить type: module в package.json
SyntaxError в index.mjsОшибка копирования контрольного кода или несовместимость синтаксиса со старой версией Node.jsСкопировать код из раздела 6 повторно, использовать актуальную LTS-версию Node.js
Вывод отличается от ожидаемогоКонтрольный файл изменен или вызовы API выполнены в другой последовательностиСверить содержимое index.mjs с разделом 6 и повторить запуск

12. Ограничения эксплуатации

  • ПО является библиотекой и не имеет самостоятельного графического интерфейса пользователя;
  • ПО не требует развертывания веб-сервера, сервера приложений, СУБД или облачного хранилища;
  • ПО не требует учетных записей, паролей, лицензионных ключей или отдельной активации;
  • ПО используется внутри JavaScript/TypeScript-приложения и выполняется в среде, где запущено это приложение;
  • эксплуатация экземпляра для экспертной проверки выполняется через npm-команды и контрольный JavaScript-файл.

13. Контрольный перечень соответствия требованиям к эксплуатационной документации

Требование к эксплуатационной документацииРеализация в настоящем документе
Ссылка на экземпляр ПО либо набор инсталлируемых компонентовРаздел 2 содержит ссылки на страницу правообладателя и npm-пакет; раздел 4 содержит команды npm install и npm pack для получения инсталлируемого компонента
Последовательность действий для загрузки программыРазделы 4 и 5 описывают загрузку через npm install и npm pack
Последовательность действий для запуска программыРазделы 5 и 6 описывают создание index.mjs и запуск node index.mjs
Последовательность действий для выполнения программыРаздел 6 содержит контрольный сценарий выполнения и ожидаемый вывод
Последовательность действий для завершения программыРазделы 5 и 9 описывают завершение Node.js-процесса и удаление пакета
Описание функцийРазделы 1 и 7 описывают функции управления состоянием и программный интерфейс
Описание формата и вариантов командРаздел 8 содержит таблицу команд, их формат, параметры и ожидаемые ответы
Ответы программы на командыРазделы 6 и 8 содержат ожидаемые ответы команд и контрольного сценария
Логин и пароль для экспертов при наличииРаздел 10 указывает, что логин и пароль не требуются

14. Сведения для связи

Правообладатель: ООО «АЙТИ ДЕВ ЛИНК».

Электронная почта для связи: info@itdevlink.ru.

Техническая поддержка и сопровождение экземпляра ПО обеспечиваются командой правообладателя без фиксированного графика и без установленного SLA, если иное не предусмотрено отдельным соглашением.