## Сторонние библиотеки
Эта платформа использует небольшое количество сторонних open-source библиотек для работы браузерных учебных инструментов.
Часть файлов хранится локально и отдаётся как статические файлы этого сайта. Другие зависимости остаются загружаемыми с зафиксированных CDN URL, если vendoring добавил бы лишнюю нагрузку на поддержку или если сам runtime намеренно работает через сетевые пакеты.
## Локальные vendor-файлы
Некоторые лёгкие или важные runtime-зависимости отдаются локально: подсветка кода, assets терминала, браузерная поддержка SQLite и runtimes для регулярных выражений.
Такой подход уменьшает зависимость обычной загрузки страниц от внешних CDN и позволяет обновлять критичные UI/runtime части вместе с основным деплоем сайта.
## CDN-зависимости runtime
Большие или чувствительные к собственному loader-у runtimes, включая Monaco Editor и Pyodide, могут по-прежнему загружаться с зафиксированных CDN URL.
Отдельные JavaScript-библиотеки в онлайн IDE, например библиотеки для графиков или визуализации, являются sandbox-зависимостями, которые пользователь выбирает сам. Они выполняются в изолированном sandbox origin, а не в основном origin сайта с авторизацией.
Там, где браузерный API загрузки это поддерживает, CDN-скрипты используют Subresource Integrity. Некоторые worker API не имеют native SRI; для таких случаев используются зафиксированные версии, CSP allowlist, изоляция sandbox, обработка runtime-ошибок и smoke-тесты.
## Лицензии и права
Сторонние библиотеки, фреймворки, торговые марки и логотипы остаются собственностью их авторов и maintainers.
Vendor-файлы лицензий и notices хранятся рядом с соответствующими статическими assets там, где это требуется. Эта страница является понятным кратким описанием, но не заменяет оригинальные тексты лицензий.
## Основные сторонние библиотеки
Платформа использует сторонние open-source проекты, включая:
- Monaco Editor — браузерный редактор кода.
- Pyodide — Python runtime для WebAssembly.
- Xterm.js — компонент UI терминала.
- Prism — подсветка синтаксиса.
- sql.js — SQLite, скомпилированный в WebAssembly.
- XRegExp, PCRE2 WASM и Oniguruma — движки регулярных выражений.
- D3, Chart.js, p5.js, Three.js, Lodash, Papa Parse, Marked, js-yaml и похожие библиотеки — необязательные sandbox/runtime зависимости, которые выбирает пользователь.
Файлы лицензий и notices для vendored библиотек предоставляются рядом с соответствующими статическими assets там, где это требуется.