babel-preset-travi
My shareable babel preset
Usage
Installation
$ npm install babel-preset-travi --save-dev
Via .babelrc
for internal development purposes
This will target the current version of node and transpile my preferred upcoming
features.
{
"presets": ["travi"]
}
In React projects
This will target the current node version, but will also transpile React features
{
"presets": [["travi", {"react": true}]]
}
- Prevent transpilation of module imports/exports so
Rollup
can optimize properly - Transpile to the lowest common denominator of your expected consumers' execution
environments
In the rollup.config.js
:
export default {
...
plugins: [
babel({
babelrc: false,
exclude: ['./node_modules/**'],
presets: [['travi', {targets: {node: 8}, modules: false}]],
}),
...
],
...
};
In projects that target both node and browsers
export default {
...
plugins: [
babel({
babelrc: false,
exclude: ['./node_modules/**'],
presets: [['travi', {targets: {node: 8, browser: true}, modules: false}]],
}),
...
],
...
};
In React projects
export default {
...
plugins: [
babel({
babelrc: false,
exclude: ['./node_modules/**'],
presets: [['travi', {
targets: {node: 8, browser: true},
react: true,
modules: false
}]],
}),
...
],
...
};
Contribution
Dependencies
$ nvm install
$ npm install
Verification
$ npm test