7 Repos
Isolated execution contexts for running JavaScript code with controlled globals and timeouts.
Distinct from Code Execution Sandboxes: Distinct from Code Execution Sandboxes: focuses on JavaScript-specific sandboxing via VM module, not general-purpose code sandboxing.
Explore 7 awesome GitHub repositories matching devops & infrastructure · JavaScript Sandboxed Runtimes. Refine with filters or upvote what's useful.
Node.js is an open-source, cross-platform JavaScript runtime environment built on the V8 engine, designed for executing JavaScript code outside a web browser. It operates as a server-side JavaScript platform with an event-driven, non-blocking I/O architecture that enables building scalable network applications and web servers. The runtime integrates the CommonJS module system for synchronous module loading and the npm ecosystem for sharing and reusing packages. The platform provides comprehensive capabilities for web server development, including creating HTTP and HTTPS servers, managing HTTP
Provides a built-in VM module for executing JavaScript in isolated contexts with controlled globals.
Hypernova ist eine verteilte Rendering-Engine und ein Server-Side-Rendering-Dienst, der JavaScript-Komponenten auf einem Remote-Server in HTML umwandelt. Sie fungiert als Framework für die Hydratisierung von Webseiten, das es ermöglicht, interaktives Verhalten an statisches, serverseitig generiertes Markup anzuhängen, indem der Anwendungszustand im Browser deserialisiert wird. Das System nutzt eine isolierte JavaScript-Laufzeitumgebung, die Komponenten innerhalb von sandboxed virtuellen Maschinen ausführt, um das Durchsickern globaler Zustände und Interferenzen zwischen gleichzeitigen Anfragen zu verhindern. Es verwendet eine verteilte Architektur, um Rendering-Aufgaben über mehrere Worker-Prozesse und CPU-Kerne hinweg auszuführen. Die Engine verwaltet den Anfrage- und Verkehrsfluss durch eine Batch-Request-Pipeline und ein erweiterbares Middleware-System für die Lifecycle-Interzeption. Sie umfasst Funktionen für die Serialisierung des Anwendungszustands, clientseitige Rendering-Fallbacks zur Sicherstellung der Seitenverfügbarkeit sowie Unterstützung für mehrsprachige Clients zur Übermittlung von Anfragen aus verschiedenen Backend-Umgebungen.
Provides isolated JavaScript execution contexts using sandboxed virtual machines to prevent state interference.
Dieses Projekt ist eine portugiesische Übersetzung eines umfassenden JavaScript-Programmierleitfadens und einer Bildungsressource. Es dient als technisches Lehrbuch, das JavaScript-Bildung für portugiesischsprachige Personen zugänglich macht und grundlegende Syntax, Datenstrukturen und Programmierlogik abdeckt. Das Material bietet Anleitungen sowohl für die Webentwicklung als auch für den Bau serverseitiger Anwendungen. Es enthält einen strukturierten Ansatz, um zu lernen, wie man das Document Object Model (DOM) des Browsers manipuliert und Benutzerereignisse verarbeitet, um interaktive Benutzeroberflächen zu erstellen. Die Ressource wird in mehreren Formaten bereitgestellt, einschließlich einer statischen Website mit einer browserbasierten Code-Sandbox zum Ausführen von Beispielen und Üben der Logik. Inhalte sind auch für das Offline-Studium als PDF- und EPUB-Export verfügbar.
Provides an isolated browser environment specifically for executing JavaScript code samples.
deployd ist ein Echtzeit-API-Framework und ein MongoDB-Backend-as-a-Service, das die Erstellung vernetzter Interfaces ermöglicht, die Daten und Ereignisse zwischen Clients und Servern synchronisieren. Es fungiert als JavaScript-API-Middleware, die in HTTP-Server integriert werden kann, um Authentifizierung, Request-Interceptors und Echtzeitfunktionen bereitzustellen. Das Projekt bietet ein selbst gehostetes API-Management-Dashboard zur Konfiguration von Ressourceneinstellungen, zur Verwaltung von Datensammlungen und zur Überwachung des Serverstatus über ein webbasiertes Interface. Es enthält eine Echtzeit-Datensynchronisations-Engine, die Live-Datenbankaktualisierungen über Sockets an verbundene Clients sendet. Das System deckt Backend-Datenmanagement mit Schema-Validierung und rekursiven Abfragen ab sowie Benutzerauthentifizierungs-Workflows, die Sitzungen über zustandslose Anfragen und persistente Verbindungen hinweg verfolgen. Es bietet zudem Funktionen für Echtzeit-Event-Broadcasting, benutzerdefinierte API-Middleware-Erweiterung über Module und administrative Zugriffskontrolle. Das Projekt enthält ein CLI zum Bootstrapping neuer Projekte und zum Ausführen von Entwicklungsservern.
Executes user-defined JavaScript in isolated environments with unique global scopes to prevent resource interference.
Jint ist ein JavaScript-Interpreter für das .NET-Ökosystem, der Code ausführt, ohne eine Browser- oder Node.js-Umgebung zu benötigen. Es ist eine ECMAScript-konforme Engine, die eine sandboxed Scripting-Runtime mit konfigurierbaren Limits für Speicher und Zeit bietet, um nicht vertrauenswürdigen Code auszuführen. Die Engine verfügt über eine native Objektbrücke, die .NET-Klassen und -Methoden für JavaScript-Skripte zum bidirektionalen Datenaustausch bereitstellt. Um den Overhead bei wiederholten Ausführungen zu reduzieren, nutzt sie einen vorkompilierten Skript-Cache, um geparstes JavaScript im Speicher zu speichern. Das Projekt deckt asynchrone Skriptausführung und Promise-Handling ab, neben ES6-Modul-Unterstützung für die Auflösung von Abhängigkeiten und zirkulären Referenzen. Es enthält Internationalisierungsfunktionen für die Verwaltung von Kultureinstellungen und Zeitzonenauflösung über externe Locale-Provider. Die Sicherheit wird durch Ressourcenbeschränkungen bei der Ausführung und Kontrolle über den Zugriff auf die Common Language Runtime verwaltet.
Provides isolated execution contexts for JavaScript with configurable memory and time limits.
vm2 ist eine Node.js-JavaScript-Sandbox und Laufzeit-Virtualisierer, der für die Ausführung von nicht vertrauenswürdigem Code entwickelt wurde. Er fungiert als sicherer Code-Evaluator und Modul-Isolator, der den Host-Prozess durch die Schaffung einer isolierten Ausführungsumgebung mit eingeschränktem Zugriff auf die Node.js-Runtime schützt. Das System zeichnet sich durch ein Sicherheitsframework aus, das Objekt-Proxying und Deep-Freezing nutzt, um zu verhindern, dass sandboxed Skripte den globalen Host-Kontext oder gemeinsam genutzte Objekte modifizieren. Es implementiert eine strikte Modul-Zugriffskontrolle unter Verwendung von Allow-Lists und Pfadbeschränkungen, um zu steuern, welche integrierten oder externen Abhängigkeiten geladen werden können. Das Projekt deckt breite Funktionsbereiche ab, einschließlich Ressourcenmanagement, bei dem es die Speicherzuweisung für Puffer begrenzt und Ausführungs-Timeouts erzwingt, um Denial-of-Service-Angriffe zu verhindern. Es bietet zudem Dateisystem-Zugriffsbeschränkungen und Tools für Interoperabilität zwischen Sandboxes sowie die Umleitung von Konsolenausgaben. Eine Befehlszeilenschnittstelle ist für die direkte Ausführung von JavaScript-Dateien innerhalb der isolierten Sandbox-Umgebung verfügbar.
Acts as a runtime virtualizer that protects the host global context through object proxying and property freezing.
Isolated-vm is a library for creating secure, memory-isolated JavaScript execution environments within Node.js. It functions as a manager for the underlying engine, allowing developers to instantiate multiple independent execution contexts that share no memory or global state. This architecture is designed to support the execution of untrusted third-party code while preventing interference with the main application process. The project distinguishes itself by enforcing strict resource constraints, including memory limits and CPU execution timeouts, to ensure host system stability. It provides
Provides a library for creating secure, memory-isolated JavaScript execution environments within Node.js.