Skip to content

nvlastik/live-code-editor

Repository files navigation

Live Code Editor

Браузерная IDE с совместным редактированием, stdin и выполнением кода в Docker. Сейчас есть выполнение только python и JavaScript.

Production

Развёртывание за nginx: см. DEPLOY-NGINX.md

Кратко:

  • пароль платформы: PLATFORM_PASSWORD в .env;
  • сессия в httpOnly-cookie (подпись AUTH_SECRET_KEY);
  • лимиты времени/памяти — статические env-переменные;
  • один uvicorn worker (комнаты в памяти).

Локальная разработка

# Sandbox
docker build -t live-code-editor-sandbox:latest ./runner

cd backend
python -m venv .venv
.venv\Scripts\activate   # Windows
pip install -r requirements.txt
cp ..\.env.example ..\.env
# DEBUG=true — пароль не обязателен; для проверки auth задайте PLATFORM_PASSWORD

cd ..
# .env в корне проекта
uvicorn app.main:app --app-dir backend --reload --host 127.0.0.1 --port 8000

http://127.0.0.1:8000

Возможности

Функция Описание
Коллаборация Синхронизация целого документа по WebSocket
Stdin Поле ввода, передаётся в sandbox
Run Python / JavaScript в изолированном контейнере
Auth Единый пароль из env (production)
Лимиты EXECUTION_TIMEOUT_SECONDS, EXECUTION_MEMORY_MB, …

About

A browser-based IDE with collaborative editing, stdin, and code execution in Docker.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors