Coder Social home page Coder Social logo

babel-preset-futagozaryuu's Introduction

CI npm version dependencies History License

This is a Babel preset of other presets and plugins that I most commonly use.

  • From v2.12, this preset is using the @babel/* dependencies for Babel 7+
  • From v3 this preset is using the proposal plugins directly as Babel 7 dropped the stage presets

installation

$ npm install --save-dev babel-preset-futagozaryuu

usage

Put the following into your .babelrc file:

{
    "presets": [ "futagozaryuu" ]
}

or on the CLI

$ babel src --out-dir lib --presets futagozaryuu

configuration

You can see the complete list of options in babel-preset-futagozaryuu/lib/config/default-options.js.

{
    "presets": [
        [ "futagozaryuu", {

            // set root directory for `babel-plugin-module-resolver`
            "disableResolver": false,
            "root": [ "src" ],

            // disable the use of `@babel/preset-stage-*` plugins
            // (anything not a number between 0 to 3 is the same)
            "stage": 4,

            // Target a spefic version of node
            // (alternative: `package.json#engines.node`)
            "node": 6,

            // Blacklisting the var/const transform
            "exclude": [ "transform-es2015-block-scoping" ],

            // Blacklisting ES Modules transpilation
            "modules": false,

            // re-enable the use of `regenerator`
            "regenerator": true

        } ]
    ]
}

the useBuiltIns option

When using the option useBuiltIns with values usage or entry, ensure that you:

  1. Have the corejs option enabled (by default this is set to { version: 3, proposals: true })
  2. Include the dependencies core-js and regenerator-runtime in your published package

recommendation for vs code users

Adding the following files (and settings) will ensure that VS Code can find your ES6+ files even if you are using babel-plugin-module-resolver to change the root path of your module lookups during transpile.

This is based on a comment in tleunen/babel-plugin-module-resolver#92 by @jgoux.

.vscode/settings.json:

{
    "path-intellisense.mappings": {
        "/": "${workspaceRoot}/src"
    }
}

src/jsconfig.json:

{
    "compilerOptions": {
        "baseUrl": "./",
    }
}

versioning

I have tried to follow semver versioning, but from v2.19 I will follow these rules:

2.18.0 = RELEASE.REVISION.PATCH

  1. RELEASE is incremented each time a new major version of Babel is supported
  2. PATCH is only incremented when
    • a bug is fixed
    • docs are updated between revisions
    • dependency updates between revisions
  3. REVISION is incremented for all other changes
  4. PATCH is reset when REVISION increments

license

Copyright © 2017+ Futago-za Ryuu, https://github.com/futagoza
Released under the MIT License, http://opensource.org/licenses/MIT

babel-preset-futagozaryuu's People

Contributors

futagoza avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.