
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
pure-javascript
Advanced tools
Pure JS is a modular JavaScript library that provides polyfills and shims for ECMAScript features, enabling developers to use modern JavaScript features in environments that do not natively support them. This library focuses on providing a "pure" implementation, avoiding global pollution by exporting features as modules.
✅ Polyfills for ECMAScript features, including:
Map, Set, WeakMap, WeakSetSymbol and well-known symbols (Symbol.asyncDispose, Symbol.dispose)queueMicrotask, structuredClone)✅ Modular Design - Import only what you need
✅ Compatibility - Supports both modern and legacy JavaScript environments
override/internals/Contains internal utilities and helpers used across the library:
map-helpers.js - Helper methods for Map operations.set-helpers.js - Helper methods for Set operations.weak-map-helpers.js - Helper methods for WeakMap operations.weak-set-helpers.js - Helper methods for WeakSet operations.map-iterate.js - Implements iteration logic for Map objects.set-to-string-tag.js - Sets the toStringTag property for objects.define-built-ins.js - Defines multiple built-in properties on a target object.override/modules/Polyfills for specific ECMAScript features:
esnext.symbol.async-dispose.js - Defines Symbol.asyncDispose.esnext.symbol.dispose.js - Defines Symbol.dispose.es.regexp.constructor.js - Ensures correct RegExp constructor behavior.web.dom-collections.iterator.js - Adds iterator support for DOM collections.override/internals/collection.jsDefines logic for managing collection constructors (Map, Set, WeakMap, WeakSet).
package.jsonIncludes metadata about the project (name, author, license, dependencies) and scripts for post-installation tasks.
To install Pure JS via npm, run:
npm install pure-javascript
Import specific polyfills as needed:
import "pure-javascript/override/modules/esnext.symbol.dispose.js";
const obj = {
[Symbol.dispose]() {
console.log("Disposed!");
},
};
obj[Symbol.dispose]();
Contributions are welcome! Feel free to submit issues or pull requests to improve Pure JS.
This project is licensed under the MIT License.
FAQs
Standard library
We found that pure-javascript demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.