Adding browserslist support to your project
A lot of the tools in my projects like `Autoprefixer`, Babel's `preset-env` and `preset-modules` use browserslist (yes that's the name, no typo) to decide if adding prefixes or transpiling is required. The hardest thing for me to decide is what versions to support and whether they will be the same for all projects or all tools. For example, I'm all for supporting ES2017 and earlier in my projects. ES 2017 support means that we're supporting all the features I would like to use in my projects without having to be afraid of substantial differences in support or broken implementations (broken implementations are always possible but less likely). The table below shows the earliest browser that supports module scripts and the full set of ECMAScript 2017 features. | Feature Supported | Chrome | Edge | Firefox | Safari | | --- | :-: | :-: | :-: | :-: | | <script type="module"> | 61+ | 16+ | 60+ | 10.1+ | | All ES2017 features (minus atomics+shared memory) | 58+ | 16+ | 53+ | 10.1+ | This could be easily included in a `.browserslistrc` configuration file or as part of a `package.json` file. A `.browserslistrc` file for the browser versions that support the `