# Веб-сервис для отладки Robossembler Framework Необходимость разработки сервиса хранения и просмотра пакетов обусловлена тем, что для корректной работы фреймворка «Робосборщик» необходима согласованная работа разнообразных программный модулей – результаты работы одних модулей должны передаваться через стандартизированные интерфейсы другим модулям. Как правило, результатами работы программных модулей являются исполняемые файлы программ, файлы 3D-моделей в форматах STL, FBX, Collada/DAE, OBJ, PLY и т.п., конфигурационные файлы в форматах yaml, json, ini, txt, веса нейронных сетей, описания роботов/сцен в форматах URDF, SDF, MJCF и т.д.. При этом необходимо соблюсти условие соответствия данных файлов/документов друг другу, иметь возможность формировать и отслеживать цепочки вычислений (конвейер, pipeline), которые их порождают. Данный веб-сервис выполняет следующие функции: - Создание процессов (process) – команд, запускающих определённые вычисления - Создание триггеров (trigger) – событий, запускающихся по завершении процесса - Создание конвейеров вычислений (pipeline) – цепочек из процессов - Создание проектов (project) – набора конвейеров для выполнения прикладных задач - Хранение и просмотр артефактов, порождаемых процессами, а также отслеживание их жизненного цикла - Запуск процессов/конвейеров и отслеживание их состояния Веб-сервис написан на языке TypeScript для среды исполнения NodeJS. Для хранения артефактов используется база данных MongoDB. Исходный код проекта разработан в соответствии с концепцией «Чистой архитектуры», описанной Робертом Мартином в одноимённой книге. Данный подход позволяет систематизировать код, отделить бизнес-логику от остальной части приложения. # Установка ## Требования - Node.js - MongoDB ## Сборка UI - `cd ui && npm i && npm run build && npm run deploy` # Запуск сервиса - `cd server && npm run dev`