Об этом проекте

PlayCanvas Editor — это визуальная среда редактирования, лежащая в основе playcanvas.com, используемая для создания WebGL, WebGPU и WebXR-приложений непосредственно в браузере. Этот репозиторий содержит исходный код фронтенда редактора, который разработчики могут запускать локально и загружать для работы со своими сценами PlayCanvas. Ключевые моменты из README: - Редактор доступен через playcanvas.com и обеспечивает визуальный рабочий процесс редактирования сцен для проектов реального времени 3D и XR. - Выделен путь разработки с поддержкой ИИ: редактор включает встроенную интеграцию Model Context Protocol (MCP), позволяющую ИИ-ассистентам просматривать и изменять проекты через открытую сессию редактора. - Для локальной разработки требуется Node.js 18 или новее. После клонирования и запуска npm install, npm run dev собирает фронтенд и обслуживает его локально на порту 3487. Добавление параметра запроса use_local_frontend к URL сцены на playcanvas.com загружает сборку для разработки вместо продакшн-версии; параметр также работает в редакторе кода и на странице запуска. - Редактор построен на нескольких библиотеках с открытым исходным кодом: PlayCanvas Engine (3D-вид и страница запуска), Observer (привязка данных и история), PCUI (компоненты фронтенда) и PCUI-Graph (рендеринг графов на основе узлов). Интеграционное тестирование этих библиотек поддерживается через npm link. - Набор тестов использует Playwright для сквозного тестирования и разделен на API-тесты и UI-тесты. Для его запуска требуются Docker и файл .env с настройками хоста, логина и хоста запуска, а также файл cookie аутентификации от существующей учетной записи PlayCanvas. Docker Compose запускает и останавливает тестовый контейнер, а образ можно собрать из исходников с помощью флага --build. - Для написания новых тестов требуется Node.js 18+; устанавливаются зависимости Playwright, а npm run codegen поддерживает динамическую запись тестов. Ссылки на документацию включают руководство пользователя, справочник API, блог и форум. Проект выпущен под лицензией, указанной в файле в репозитории, и имеет каналы сообщества в Discord, Reddit и X.