Merge branch '6-fix/add-deploy-readme' into 'main'

Build and deploy instructions in README.md

Closes #6

See merge request robossembler/webservice!8
This commit is contained in:
Igor Brylyov 2024-02-13 11:34:21 +00:00
commit 6732d5a98f
6 changed files with 25109 additions and 3 deletions

View file

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

1
server/.gitignore vendored
View file

@ -4,7 +4,6 @@
.DS_Store
node_modules/
coverage
package-lock.json
.*.swp
build/
model_create.ts

6829
server/package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

1
ui/.gitignore vendored
View file

@ -21,5 +21,4 @@
npm-debug.log*
yarn-debug.log*
yarn-error.log*
package-lock.json
todo.md

18261
ui/package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -28,6 +28,7 @@
"react-scripts": "5.0.1",
"reflect-metadata": "^0.1.13",
"sass": "^1.66.1",
"serve": "^14.2.1",
"socket.io-client": "^4.7.2",
"three": "^0.159.0",
"three-stdlib": "^2.28.9",
@ -42,7 +43,8 @@
"dev": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
"eject": "react-scripts eject",
"deploy": "serve -s build"
},
"eslintConfig": {
"extends": [