isolated-vm

Если тебе нужно запускать чужой JavaScript-код, но так, чтобы он не сломал всё и не получил доступ к лишнему, то `isolated-vm` — это то, что надо. Он создаёт изолированные среды, где каждый скрипт работает в своём "песочнице", не мешая другим. Прямо как в браузере, только для Node.js.
`isolated-vm` — это библиотека для Node.js, которая даёт доступ к `Isolate` интерфейсу V8. Она позволяет создавать полностью изолированные JavaScript-окружения, где нет лишних возможностей Node.js. Написана, очевидно, на C++ и JS.
Эта штука умеет очень круто управлять памятью: можно задать лимит для каждого изолята, и если код начнёт жрать слишком много, его просто прибьют. А ещё можно передавать данные между изолятами, но только "безопасным" способом, чтобы никто не смог пролезть туда, куда не надо.
https://github.com/laverdet/isolated-vm | 2874 звезды
#сервисы


