studio/package.json
МИН 31adbf151b Initial public release: Студия Рублокса v1.0
Open-source веб-студия для создания игр Рублокса, двойная лицензия
AGPL-3.0 + Коммерческая.

Главное:
- Vite 5 + React 18 + Babylon 7.54.3 + Monaco Editor + Colyseus 0.16
- Самодостаточный движок ~28к строк (66 файлов): BlockManager,
  TerrainVoxelBuilder, ModelManager, DecoManager, PlayerController,
  ScriptSandboxWorker, MultiplayerSync, 30+ GD-гейммодов
- Главный редактор KubikonEditor (~37к строк) + панели, ScriptEditor (Monaco)
- Витрина игр (KubikonFeed, KubikonStudio, KubikonDocs, KubikonLearn)
- Geometry Dash sub-app (GdMenu, GdShop, GdRules, GdCoverArt)
- 10 admin-preview каталогов для дизайнеров (скины, музыка, порталы и т.д.)
- Конфигурируемый бэкенд через VITE_API_BASE — работает со staging
  (dev-api.rublox.pro) без настройки
- Standalone-режим (VITE_STANDALONE=true) — открыть пустой редактор без бэка
- Полная документация (на русском): README, ARCHITECTURE, CONTRIBUTING,
  SECURITY, CHANGELOG
- ESLint + Prettier + EditorConfig
- Legal: LICENSE (AGPL-3.0), LICENSE-COMMERCIAL.md, CLA.md, COPYRIGHT.md
- Issue templates: bug_report, feature_request, security_disclosure

Перед публикацией:
- Все импорты из minecraftia заменены на локальные
- Все хардкоды URL (minecraftia-school.ru) и внутренних IP убраны → env
- Admin-эндпоинты Kubikon3DService вырезаны (остаются в приватном репо)
- AdminKubikonModeration не публикуется (модерация — в team.rublox.pro)
- 93 МБ ассетов public/kubikon-assets вынесены в .gitignore
  (раздаются через release artifact)
2026-05-27 23:41:10 +03:00

69 lines
1.9 KiB
JSON

{
"name": "rublox-studio",
"version": "1.0.0",
"type": "module",
"description": "Open-source веб-студия для создания игр Рублокса — Babylon.js 7 + React 18 + Vite 5. Скриптинг на JS в Web Worker-песочнице.",
"keywords": [
"rublox",
"game-editor",
"babylonjs",
"3d-editor",
"voxel-editor",
"react",
"vite",
"geometry-dash",
"monaco"
],
"homepage": "https://rublox.pro",
"bugs": {
"url": "https://git.rublox.pro/rublox/studio/issues",
"email": "security@rublox.pro"
},
"repository": {
"type": "git",
"url": "git+ssh://git@git.rublox.pro:2222/rublox/studio.git"
},
"license": "AGPL-3.0-or-later",
"author": {
"name": "Иванкова Виктория Сергеевна (ИП)",
"email": "maksimivankov26@yandex.ru",
"url": "https://rublox.pro"
},
"scripts": {
"start": "vite",
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"lint": "eslint . --ext .js,.jsx --max-warnings 200",
"format": "prettier --write \"src/**/*.{js,jsx,json,md,css}\"",
"format:check": "prettier --check \"src/**/*.{js,jsx,json,md,css}\""
},
"dependencies": {
"@babylonjs/core": "7.54.3",
"@babylonjs/loaders": "7.54.3",
"@monaco-editor/react": "^4.7.0",
"axios": "1.8.4",
"colyseus.js": "0.16.22",
"dompurify": "^3.0.0",
"html2canvas": "^1.4.0",
"jwt-decode": "4.0.0",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-router-dom": "7.4.0",
"socket.io-client": "^4.8.3"
},
"devDependencies": {
"@types/react": "18.3.12",
"@types/react-dom": "18.3.1",
"@vitejs/plugin-react": "4.3.3",
"eslint": "^8.57.0",
"eslint-plugin-react": "^7.34.0",
"eslint-plugin-react-hooks": "^4.6.0",
"prettier": "^3.2.5",
"vite": "5.4.10"
},
"engines": {
"node": ">=18"
}
}