CommonJS is a project with the goal of specifying an ecosystem for JavaScript outside the browser (for example, on the server or for native desktop applications).
The project was started by Mozilla engineer Kevin Dangoor in January 2009 and initially named ServerJS.
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.
In May 2013, Isaac Z. Schlueter, the author of npm, the package manager for Node.js, said CommonJS is being made obsolete by Node.js, and is avoided by the core Node.js developers.
The list of specifications includes:
What I thought wasn't mine
In the light, wasn't one of a kind
A precious pearl when I wanted to cry
I couldn't 'cause I wasn't allowed
Gomenasai for everything
Gomenasai, I know I let you down
Gomenasai till the end, I never needed a friend
Like I do now
What I thought wasn't all so innocent
Was a delicate doll of porcelain
When I wanted to call you and ask you for help
I stopped myself
Gomenasai for everything
Gomenasai, I know I let you down
Gomenasai till the end, I never needed a friend
Like I do now
What I thought was a dream, a mirage
Was as real as it seemed, a privilege
When I wanted to tell you, I made a mistake
I walked away
Gomenasai, for everything, Gomenasai, Gomenasai
Gomenasai, I never needed a friend, like I do now
Gomenasai, I let you down, Gomenasai, Gomenasai
Gomenasai till the end, I never needed a friend