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)
69 lines
1.9 KiB
JSON
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"
|
|
}
|
|
}
|