30 open-source projects similar to esm-dev/esm.sh, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Esm.sh alternative.
Snowpack is an ESM-powered frontend build tool and development server that serves native ES modules directly to the browser. By eliminating the bundling process during development, it enables nearly instant server startup and unbundled frontend development. The project features a framework-aware hot module reload system that preserves component state during updates, with specific Fast Refresh integration for React, Preact, Svelte, and Vue. It also acts as a modern web transpiler, automatically converting TypeScript, JSX, and CSS Modules into browser-compatible code without requiring manual co
This project is a CommonJS module bundler and resolver designed to combine interdependent JavaScript files into a single script for execution in web browsers. It functions as a Node.js JavaScript bundler that emulates server-side core modules and resolves dependencies to ensure compatibility between server-side logic and browser environments. The system features an extensible bundling pipeline and a browser-side module resolver. It provides a plugin architecture for transforming source code and a source map generator to correlate bundled output back to original files for debugging. The proje
The browserify-handbook is a comprehensive documentation guide for Browserify, a CommonJS module bundler and JavaScript build tool. It explains how to compile Node.js style modules into single JavaScript files for execution within web browsers. The guide covers the generation of universal module definition bundles that function across Node, AMD, and browser environments. It also details the use of browser-compatible polyfills for Node.js built-in modules to ensure cross-platform compatibility. The manual describes capabilities for source code transformation, frontend build automation, and we
Deno is a high-performance runtime for JavaScript and TypeScript that prioritizes security and developer productivity. Built on the V8 engine, it provides a secure execution environment that enforces a default-deny security model, requiring explicit user authorization for access to system resources like the file system, network, and environment variables. The runtime natively supports modern web-standard APIs, ensuring consistent behavior and portability across different environments. What distinguishes Deno is its integrated approach to the software development lifecycle. It bundles essentia
Rollup is an ES module bundler and JavaScript module transpiler. It functions as a build tool that combines JavaScript modules into optimized files and converts modern JavaScript and JSX into various output formats for different runtime environments. The project is distinguished by its static-analysis tree shaking engine, which removes unused code and dead exports to minimize bundle size. It also acts as a code splitting orchestrator, partitioning modules into separate chunks to optimize network requests and load times. The tool provides a hook-based plugin system for extending build logic,
Rolldown is a high-performance JavaScript and TypeScript module bundler written in Rust. It functions as a fast module compiler that implements a Rollup-compatible API to ensure compatibility with existing workflows and plugins while specializing in ECMAScript Module formats. The project distinguishes itself by using a Rust-based core engine and lazy compilation to reduce the time spent resolving and transforming source code. It focuses on minimizing final delivery sizes through static analysis and tree-shaking to remove unused code. The toolset covers a broad range of build capabilities, in
This project is a comprehensive UI toolkit that provides a declarative, reactive framework for building modular web interfaces. It centers on a component-based architecture that maps application state to rendered elements, utilizing a twelve-point flexbox grid system and nested containers to manage complex layouts. The library ensures consistent behavior across large-scale applications by providing centralized configuration for component defaults, themes, and global design tokens. What distinguishes this framework is its deep integration of Material Design principles alongside a highly flexib
Harp is a zero-configuration static web server and asset compiler that transforms templates and stylesheets into browser-ready assets during web requests. It functions as an on-the-fly compiler and template engine orchestrator, converting files such as Markdown, Jade, Sass, and CoffeeScript into standard HTML, CSS, and JavaScript without requiring a manual build step. The system eliminates complex build scripts by using a filesystem-driven route mapping and extension-based resolution to match files to specific compilation engines. It utilizes memory-based caching to store processed assets and
JSBin is a collaborative JavaScript playground and online frontend sandbox for writing, executing, and debugging web code. It provides a real-time code editor and an integrated environment that instantly renders HTML, CSS, and JavaScript with a live preview. The platform is designed for live coding demonstrations and pair programming, featuring a broadcasting environment that transmits keystrokes and code changes to other users instantly. It supports real-time synchronization for multiple developers through shared live sessions and includes a transpilation tool to convert alternative programm
This project is a runtime utility designed to execute TypeScript files directly, removing the need for manual build steps or complex configuration. It functions as an execution engine that processes source code in memory, enabling rapid iteration during development. The tool distinguishes itself by integrating directly with the module resolution system to handle path aliases and reconcile differences between legacy and modern module formats. By intercepting the import process, it ensures consistent execution across diverse project structures and dependency types. Beyond direct execution, the
ts-node is a TypeScript execution engine and just-in-time transpiler for Node.js. It enables the direct execution of TypeScript files by converting them to JavaScript on the fly, removing the requirement for a manual pre-compilation build step. It also provides a TypeScript read-eval-print loop for evaluating expressions and testing code snippets in real time. The project integrates with the Node.js module system as a loader hook to resolve and load files using native import syntax. It features a pluggable compiler interface that allows the use of external transpilers to accelerate execution
Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an integrated environment that supports unit, integration, and browser-based testing, allowing developers to execute test suites natively without requiring separate build steps or complex configuration. The project distinguishes itself through a highly optimized execution model that leverages worker-thread isolation and on-demand module transformation to provide rapid feedback. It includes a comprehensive suite of mocking and spying utilities that allow for the interception of depen
Fresh is a server-side web framework for the Deno runtime designed for building websites with native TypeScript support. It functions as a zero-JavaScript server-side renderer that sends only HTML to the browser by default to eliminate client-side runtime overhead. The framework implements an islands architecture, which delivers static HTML and selectively activates JavaScript only for specific interactive components. It utilizes a file-system based router that automatically maps directory structures and filenames to URL patterns without requiring a central configuration file. The platform c
threads.js is a JavaScript worker thread library and asynchronous task orchestrator designed to offload CPU-intensive tasks to background threads. It functions as a cross-platform worker pool and a TypeScript worker runner that automatically transpiles and executes TypeScript files within separate threads. The project distinguishes itself by providing a unified worker API that allows for cross-platform execution across different JavaScript environments. It includes a specialized worker data serialization tool to pass complex class instances and binary data between threads, and supports inlini
Snowpack is an ESM frontend build tool and unbundled development server. It functions as a JavaScript asset transformer that serves unbundled JavaScript and stylesheets directly to the browser using native ES modules. The tool utilizes a plugin-based build pipeline to allow for the integration of third-party plugins and custom processing steps. This architecture enables an ESM development workflow where source code is streamed to the browser without a full project bundling step. It covers frontend asset management and build automation, converting source code into browser-ready assets. This i
Browserify is a build utility that enables the use of CommonJS module patterns within client-side JavaScript applications. It functions as a dependency manager and module bundler, tracing recursive import calls to package multiple source files and their dependencies into a single, optimized file for execution in web browser environments. The project distinguishes itself by providing a comprehensive compatibility layer that allows server-side code to run in the browser. It achieves this by injecting environment shims and replacing system-level globals with browser-compatible equivalents. Throu
Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and isolation. It serves as a concurrent test executor that runs test files in parallel across multiple processes to reduce total runtime and prevent state leakage between suites. The project features a built-in snapshot testing framework that saves large data structures to disk and compares subsequent executions to detect regressions via diffs. It is also compatible with the Test Anything Protocol, allowing it to export results for use with external reporting tools. Its capability
Van is a reactive JavaScript UI framework designed for building user interfaces with state binding and automatic DOM updates without a virtual DOM. It functions as a buildless frontend framework, allowing the creation of reactive applications using standard JavaScript functions that run directly in the browser without a compilation step. The framework includes a reactive state manager that uses proxy-based objects to track dependencies and trigger targeted UI updates. It provides a server-side rendering tool for generating static HTML and a corresponding client-side hydration process to attac
Napajs is an embeddable JavaScript engine and multi-threaded runtime designed to be integrated directly into other software applications as a component. It serves as a parallel computation framework that allows JavaScript code to execute across multiple threads, bypassing the standard single-threaded event loop limitation to handle CPU-intensive tasks. The runtime is distinguished by its ability to load and execute modules from the NPM ecosystem and its pluggable execution environment. This architecture allows for custom implementations of memory allocation, system logging, and performance me
This is a collection of official extensions for the Rollup bundling process. These plugins serve as module transformers, resolution managers, and bundle optimizers designed to modify how JavaScript modules are processed, resolved, and optimized. The suite provides specialized capabilities for modern web transpilation, converting TypeScript, JSX, Flow, and GraphQL into compatible JavaScript. It distinguishes itself through extensive non-JavaScript asset integration, allowing the import of JSON, YAML, CSV, and image files as JavaScript modules or data URIs, and providing support for bundling We
react-syntax-highlighter is a component for rendering source code with syntax highlighting in React applications. It acts as a wrapper for the PrismJS and Highlight.js engines to provide formatted code display and language-specific colors. The project provides a customizable code block renderer that supports custom DOM injection, line numbering, and inline styling. It allows users to replace default HTML tags with custom React components to control how code is injected into the document object model. The library covers code presentation management through visual themes and line numbering. It
Starboard Notebook is a web-based environment designed for literate programming and interactive code execution. It functions as an in-browser notebook system that allows users to combine formatted text with executable code blocks, enabling the creation of dynamic documents and data visualizations without requiring a backend server. The platform is built as an embeddable runtime, allowing developers to integrate interactive, cell-based documentation directly into existing web pages. It distinguishes itself through a modular architecture that supports custom plugin development, enabling the reg
npm-check-updates is a command line utility and programmatic module used to check for newer versions of npm packages and update project manifest files. It functions as a registry client and semantic version manager that upgrades package constraints to the latest releases. The tool distinguishes itself by including supply chain security features, such as a release cooldown period and package ownership tracking, to prevent the adoption of unstable or malicious new releases. It also provides a programmatic API for integrating dependency checks and upgrades directly into custom scripts. Broad ca
loadable-components is a React code splitting library and client-side bundle optimizer. It functions as a dynamic component loader that splits application code into smaller chunks to reduce initial bundle size and improve page load performance. The project manages the delivery of JavaScript assets through asynchronous component loading, ensuring that code chunks are fetched on demand. It utilizes a dynamic import wrapper and promise-based resolution to handle the transition from pending states to rendered components. The library provides infrastructure for server-side rendering integration,
Greenlet is a multi-threaded asynchronous executor and web worker task runner. It serves as an execution wrapper that offloads heavy computation to background workers to maintain user interface responsiveness and prevent the main execution thread from blocking. The project includes a transferable object handler designed to move large data buffers between threads. This mechanism avoids the overhead of memory copying to optimize data transfer. The library covers the management of web workers, facilitating asynchronous task isolation and main thread offloading.
Pako is a pure JavaScript compression library that ports the C zlib library to JavaScript, providing deflate and gzip compression and decompression capabilities. It runs in both browser and Node.js environments by using typed arrays and universal JavaScript, avoiding platform-specific APIs for cross-platform compatibility. The library handles data through bitwise operations for Huffman coding and LZ77 matching, and automatically encodes string inputs to UTF-8 before compression while decoding them back on decompression. It supports streaming chunk-based processing, allowing incremental data h
Parallel.js is a JavaScript library for running computational tasks concurrently across background worker threads and multi-core environments in browsers and Node. It wraps web worker management into a framework that offloads heavy computations without blocking the main event loop. The library initializes parallel jobs by wrapping serializable data in memory and configuring worker threads, execution timeouts, and synchronous fallback behavior. It supports mapping functions across datasets and reducing dataset values to scalar results by distributing work across separate threads. Operations ex
Javascript Playgrounds is a browser-based code execution engine designed for running untrusted JavaScript snippets and managing interactive playgrounds. The system isolates user-submitted code inside dedicated web workers to prevent main thread blocking and protect the host environment, while supporting dynamic module loading that fetches external libraries and third-party scripts on demand. The platform includes architectural tools for mobile device simulation, rendering application output inside configurable viewport wrappers with adjustable platform dimensions and status bar styling. Debug
This project is a technical reference and guide for optimizing the performance of Angular applications. It provides a comprehensive checklist for improving speed and efficiency by focusing on bundle optimization, rendering best practices, and runtime execution. The guide covers a wide array of differentiators including the implementation of progressive web app strategies through service workers and offline caching. It also details methods for improving perceived load times using server-side rendering and application shells. The repository provides guidance on broader capability areas such as