prime, an OOP JavaScript library for node and the web.
npm install primejs
var prime = require("prime")
var Animal = prime({
say: function(){
return "!!"
}
})
var Emitter = require("prime/emitter")
var Cat = prime({
inherits: Animal,
mixin: Emitter,
say: function(){
return "meaow" + Cat.parent.say.call(this)
}
})
`
$3
The event emitter.
`js
var Emitter = require("prime/emitter")
var Dog = prime({
inherits: Animal,
mixin: Emitter,
say: function(){
var word = "wuff" + Dog.parent.say.call(this)
this.emit("say", word)
return word
}
})
var barkley = new Dog
barkley.on("say", function(word){
console.log("barkley barked", word)
})
`
$3
Map-like implementation.
`js
var Map = require("prime/map")
var map = new Map()
map.set(domElement, "header")
map.set(domElement2, "footer")
map.get(domElement) // "header"
map.get(domElement2) // "footer"
`
$3
Optimized timeouts / immediates / animationFrames.
`js
var defer = require("prime/defer")
defer.frame(function() {
console.log('on next animation frame');
});
defer.immediate(function() {
console.log('on platform next tick.');
});
defer.timeout(function() {
console.log('late');
}, 500);
``