The API for node.js & browser should be the same (Refactored)