Run Node.js, Next.js, Vite, and Express entirely in the browser. No server required.
npm install almostnode
POSIX-compatible in-memory filesystem with watch, stat, and recursive operations.
Execute JS/TS with 40+ shimmed modules — fs, path, http, crypto, streams, and more.
Install real npm packages, resolve dependencies, extract tarballs — all client-side.
Built-in Next.js and Vite dev servers with file-based routing and React support.
React Refresh, CSS Modules, and instant file updates without page reload.
Cross-origin sandbox, Web Worker isolation, or same-origin main thread execution.
Run a Node.js HTTP server in the browser. Edit the code, hit Run, and see it serve pages live.
http · require()A full Next.js development server with App Router, file-based routing, and HMR.
next.js · app router · hmrVite running in the browser with React, hot module replacement, and npm packages.
vite · react · hmrExpress.js with routing, middleware, and JSON APIs — entirely in your browser.
express · npm installsandbox="allow-scripts"). almostnode supports both same-origin and cross-origin modes via the service worker bridge. See the Security docs for setup details.fs, path, http, crypto, stream, buffer, events, url, zlib, and more. These are browser-compatible implementations — not the full Node.js API, but enough for most web frameworks and npm packages. See the API Reference.npm.install() fetches packages from the npm registry, so it requires an internet connection. You can pre-populate the virtual filesystem with package files for offline use.