brode
A polyfill Node.js browser platform
Install
$ npm install -g @geut/brode
Usage
$ brode index.js
Test using uvu
brode
provides built-in support for uvu
and tap
like test runners.
import { test } from 'uvu';
import * as assert from 'uvu/assert';
test('Math.sqrt()', () => {
assert.is(Math.sqrt(4), 2);
assert.is(Math.sqrt(144), 12);
assert.is(Math.sqrt(2), Math.SQRT2);
});
test('JSON', () => {
const input = {
foo: 'hello',
bar: 'world'
};
const output = JSON.stringify(input);
assert.snapshot(output, `{"foo":"hello","bar":"world"}`);
assert.equal(JSON.parse(output), input, 'matches original');
});
test.run();
$ brode test.js -p uvu --target chromium,firefox
• • (2 / 2)
Total: 2
Passed: 2
Skipped: 0
Duration: 3.00ms
Target: chromium
• • (2 / 2)
Total: 2
Passed: 2
Skipped: 0
Duration: 6.00ms
Target: firefox
Node.js Stream support
You can use Node.js streams in the browser:
process.stdin.on('data', data => {
console.log(data.toString())
})
$ echo 'hello' | brode reader.js
hello
Issues
:bug: If you found an issue we encourage you to report it on github. Please specify your OS and the actions to reproduce it.
Contributing
:busts_in_silhouette: Ideas and contributions to the project are welcome. You must follow this guideline.
License
MIT © A GEUT project