require() function and
module.exports, while ES modules use
export statements for similar (though not identical) functionality.
What I’m describing here is not a technical problem. It’s a matter of people getting together and making a decision to step forward and start building up something bigger and cooler together.— Kevin Dangoor
In August 2009, the project was renamed CommonJS to show the broader applicability of the APIs. Specifications are created and approved in an open process. A specification is only considered final after it has been finished by multiple implementations. CommonJS is not affiliated with the Ecma International group TC39 working on ECMAScript, but some members of TC39 participate in the project.
The list of specifications includes:
- Modules/1.0 (Superseded by Modules/1.1)
The part after the slash is the version. When a proposal is in contention, each individual proposal (including sequential revisions from the same author) is assigned a new letter. When the main direction is known it starts being assigned numeric versions.
- Console (ported from Web)
- HTTP Client/B
- Unit Testing/B,1.0,1.0.1
- Common Node
- CommonJS Compiler - a command-line tool that makes Common JS modules suitable for in-browser use
- CommonJS for PHP - a light-weight CommonJS implementation for PHP 5.3+
- Joyent Smart Platform
- Node.js (partial; synchronous)
- Mario Casciaro; Luciano Mammino (29 July 2020). Node.js Design Patterns: Design and implement production-grade Node.js applications using proven patterns and techniques, 3rd Edition. Packt Publishing. p. 62. ISBN 978-1-83921-044-0.
- ProposalProcess - CommonJS Spec Wiki
- CommonJS: the First Year - Blue Sky On Mars
- olegp/common-node @ GitHub
- - GitHub
- DrBenton/CommonJSForPHP - GitHub
- Implementations/CouchDB - CommonJS Spec Wiki
- Implementations/GPSEE - CommonJS Spec Wiki
- Implementations/Smart - CommonJS Spec Wiki
- Homepage - JSBuild Archived 2011-01-04 at the Wayback Machine
- Implementations/Narwhal - CommonJS Spec Wiki
- Implementations/node.js - CommonJS Spec Wiki
- Implementations/Persevere - CommonJS Spec Wiki
- pinf/loader-js - GitHub
- Implementations/RingoJS - CommonJS Spec Wiki
- "SilkJS WWW Site". Archived from the original on 2017-09-12. Retrieved 2012-10-19.
- Implementations/SproutCore - CommonJS Spec Wiki
- Implementations/TeaJS - CommonJS Spec Wiki