2023-10-03 11:14:36 +08:00
|
|
|
|
# Browserslist [![Cult Of Martians][cult-img]][cult]
|
|
|
|
|
|
|
|
|
|
<img width="120" height="120" alt="Browserslist logo by Anton Popov"
|
|
|
|
|
src="https://browsersl.ist/logo.svg" align="right">
|
|
|
|
|
|
|
|
|
|
The config to share target browsers and Node.js versions between different
|
|
|
|
|
front-end tools. It is used in:
|
|
|
|
|
|
|
|
|
|
* [Autoprefixer]
|
|
|
|
|
* [Babel]
|
|
|
|
|
* [postcss-preset-env]
|
|
|
|
|
* [eslint-plugin-compat]
|
|
|
|
|
* [stylelint-no-unsupported-browser-features]
|
|
|
|
|
* [postcss-normalize]
|
|
|
|
|
* [obsolete-webpack-plugin]
|
|
|
|
|
|
|
|
|
|
All tools will find target browsers automatically,
|
|
|
|
|
when you add the following to `package.json`:
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
"browserslist": [
|
|
|
|
|
"defaults and supports es6-module",
|
|
|
|
|
"maintained node versions"
|
|
|
|
|
]
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Or in `.browserslistrc` config:
|
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
# Browsers that we support
|
|
|
|
|
|
|
|
|
|
defaults and supports es6-module
|
|
|
|
|
maintained node versions
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Developers set their version lists using queries like `last 2 versions`
|
|
|
|
|
to be free from updating versions manually.
|
|
|
|
|
Browserslist will use [`caniuse-lite`] with [Can I Use] data for this queries.
|
|
|
|
|
|
|
|
|
|
You can check how config works at our playground: [`browsersl.ist`](https://browsersl.ist/)
|
|
|
|
|
|
|
|
|
|
<a href="https://browsersl.ist/">
|
|
|
|
|
<img src="/img/screenshot.webp" alt="browsersl.ist website">
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
|
|
<br>
|
|
|
|
|
<br>
|
|
|
|
|
<div align="center">
|
|
|
|
|
<a href="https://evilmartians.com/?utm_source=browserslist">
|
|
|
|
|
<img src="https://evilmartians.com/badges/sponsored-by-evil-martians.svg"
|
|
|
|
|
alt="Sponsored by Evil Martians" width="236" height="54">
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://cube.dev/?ref=eco-browserslist-github">
|
|
|
|
|
<img src="https://user-images.githubusercontent.com/986756/154330861-d79ab8ec-aacb-4af8-9e17-1b28f1eccb01.svg"
|
|
|
|
|
alt="Supported by Cube" width="227" height="46">
|
|
|
|
|
</a>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
[stylelint-no-unsupported-browser-features]: https://github.com/ismay/stylelint-no-unsupported-browser-features
|
|
|
|
|
[obsolete-webpack-plugin]: https://github.com/ElemeFE/obsolete-webpack-plugin
|
|
|
|
|
[eslint-plugin-compat]: https://github.com/amilajack/eslint-plugin-compat
|
|
|
|
|
[Browserslist Example]: https://github.com/browserslist/browserslist-example
|
|
|
|
|
[postcss-preset-env]: https://github.com/csstools/postcss-plugins/tree/main/plugin-packs/postcss-preset-env
|
|
|
|
|
[postcss-normalize]: https://github.com/csstools/postcss-normalize
|
|
|
|
|
[`browsersl.ist`]: https://browsersl.ist/
|
|
|
|
|
[`caniuse-lite`]: https://github.com/ben-eb/caniuse-lite
|
|
|
|
|
[Autoprefixer]: https://github.com/postcss/autoprefixer
|
|
|
|
|
[Can I Use]: https://caniuse.com/
|
|
|
|
|
[Babel]: https://github.com/babel/babel/tree/master/packages/babel-preset-env
|
|
|
|
|
[cult-img]: https://cultofmartians.com/assets/badges/badge.svg
|
|
|
|
|
[cult]: https://cultofmartians.com/done.html
|
|
|
|
|
|
|
|
|
|
## Docs
|
|
|
|
|
Read full docs **[here](https://github.com/browserslist/browserslist#readme)**.
|