@esbuild-kit/esm-loader is a Node.js loader that compiles TypeScript modules to ESM on demand, transforming them at load time. It adds classic Node resolution for extensionless and directory imports, uses tsconfig.json (including paths) for alias resolution, and caches transformations for performance. The project is merged into tsx and this specific loader is unmaintained.
Project status
- Upstream is marked as archived, with the last upstream push on 2023-09-25, and there have been no subsequent updates since then, so the project appears dormant or in maintenance mode rather than actively maintained.
- The apparent update cadence is limited to a brief cluster of updates in mid to late September 2023 (v2.6.3 to v2.6.5), followed by a long silence relative to today (2026-08-11).
AI summary generated
Recent updates
v2.6.5
v2.6.5 is a small release focused on fixing module resolution and loading when the import specifier includes a query string. The code changes make extension and JSON detection query-aware during resolve and load, and add coverage in the test suite for imports like ./x.ts?query=123.
v2.6.4
v2.6.4 is a small bug fix release focused on tsconfig.json "paths" handling. The only runtime code change adjusts how the loader classifies import specifiers so that patterns beginning with slash can be matched via tsconfig paths.
v2.6.3
v2.6.3 includes a fix related to watch mode, specifically to relay dependency paths correctly on Node.js 20. The code change modifies how dependency messages are sent from the loader to the parent thread/process, moving from direct `process.send` usage to a `MessagePort`-based relay when available.
v2.6.2
v2.6.2 is a small bug-fix release focused on controlling when `globalPreload` is used based on Node.js version. The code change makes `globalPreload` available only for Node v20+.
v2.6.1
Release v2.6.1 contains a targeted fix related to how `require` is created in the loader preload context. The code change adjusts the base value used for `createRequire`, which can alter module resolution behavior for `require` calls made from the preload.
v2.6.0
Release v2.6.0 adds support for Node.js v20, as stated in the release notes. The code diff also shows a broader refactor of the Node loader hook implementation and several dependency/tooling upgrades that are not mentioned.
Featuresv2.5.5
v2.5.5 includes a bug fix intended to apply TypeScript tsconfig settings only to files that tsconfig matches. The implementation changes how tsconfig options are selected during esbuild transforms, and it also updates the underlying get-tsconfig dependency.
Breakingv2.5.4
v2.5.4 is presented as a small bug fix release focused on improving import map related errors. The code changes primarily adjust how the loader recovers from specific Node resolution errors and fall back to directory/extension resolution.
v2.5.3
v2.5.3 ships a single bug fix focused on how the loader resolves imports that look like directories. When resolving a directory path fails, it now falls back to resolving the specifier itself using module extensions, improving compatibility for “directory” paths that are actually backed by file extensions.
v2.5.2
Release v2.5.2 is presented as a bug fix that adds support for loading JavaScript data URLs. The code change also includes a small adjustment to how the loader derives `filePath` from the provided `url`, primarily to avoid incorrectly converting non-file URLs.