17 releases (11 breaking)

Uses new Rust 2021

0.12.1 Aug 31, 2022
0.11.0 Jun 7, 2022
0.9.0 Mar 10, 2022
0.6.0 Dec 26, 2021
0.3.2 Nov 29, 2021

#48 in Web programming

Download history 31611/week @ 2022-06-16 28271/week @ 2022-06-23 32635/week @ 2022-06-30 39164/week @ 2022-07-07 35049/week @ 2022-07-14 26348/week @ 2022-07-21 39519/week @ 2022-07-28 19775/week @ 2022-08-04 51644/week @ 2022-08-11 39019/week @ 2022-08-18 35553/week @ 2022-08-25 45878/week @ 2022-09-01 51521/week @ 2022-09-08 32002/week @ 2022-09-15 36138/week @ 2022-09-22 38683/week @ 2022-09-29

164,159 downloads per month
Used in 20 crates (3 directly)

MIT license

510KB
3.5K SLoC

browserslist-rs

The tool like Browserslist, but written in Rust.

Project Status

Can I use this library?

If you don't rely on the features mentioned in the Limitations section, you can use it.

We have supported most widely or most frequently used queries, and there are over 100 tests to make sure it works correctly.

For more detail about development status, please see Project #1.

Usage

Using as an NPM package

Install it:

npm i -D browserslist-rs

Since the main API is same as JavaScript-based Browserslist, you can just do as before:

const browserslist = require('browserslist-rs')

browserslist('last 2 versions, not dead')

Note that we don't plan to provide full API compatibility, so only the main exported API is available.

Using as a Rust crate

Please refer to crate documentation.

Try as Rust crate example

You can try and inspect query result by running example with Cargo:

cargo run --example inspect -- <query>

You can also specify additional options, for example:

cargo run --example inspect -- --mobile-to-desktop 'last 2 versions, not dead'

To get more help, you can run:

cargo run --example inspect -- -h

Limitations

The features below aren't supported currently:

  • Custom usage like > 0.5% in my stats.
  • Custom usage like cover 99.5% in my stats.
  • Extending custom config like extends browserslist-config-mycompany.

Credits

Thanks Andrey Sitnik for creating the JavaScript-based Browserslist which is under MIT License.

License

MIT License

Copyright (c) 2021-present Pig Fang

Dependencies

~2.4–8.5MB
~148K SLoC