Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sgentle/caniuse-cmd

Caniuse command line tool
https://github.com/sgentle/caniuse-cmd

Last synced: 1 day ago
JSON representation

Caniuse command line tool

Awesome Lists containing this project

README

        

caniuse-cmd
===========

Just what you've always wanted, it's a `caniuse` command line tool!
All the power of [caniuse.com](http://caniuse.com) with none of the nice UI or interactivity!

How do?
-------

Install with `npm install -g caniuse-cmd`.

Then type things like this:

```
$ caniuse websockets
Web Sockets βœ” 85.22% β—’ 1.35% [W3C Candidate Recommendation]
Bidirectional communication technology for web apps #JSAPI

IE ✘ 5.5+ βœ” 10+
Firefox ✘ 2+ β—’ 4+ΒΉ β—’ 6+α΅–Β² βœ” 11+
Chrome β—’ 4+ΒΉ β—’ 15+Β² βœ” 16+
Safari ✘ 3.1+ β—’ 5+ΒΉ β—’ 6+Β² βœ” 7+
Opera ✘ 9+ β—’ 11+ΒΉ βœ” 12.1+

ΒΉPartial support refers to the websockets implementation using an older version of the protocol and/or the
implementation being disabled by default (due to security issues with the older protocol).
Β²Partial support refers to lacking support for binary data.
```

(The output has truly marvellous colours that this markdown is too narrow to contain.)

Or this:

```
$ caniuse input
caniuse input
HTML5 form features βœ” 4.21% β—’ 82.39%
IE ✘ 5.5+ β—’ 10+ Firefox ✘ 2+ β—’ 4+ Chrome β—’ Safari ✘ 3.1+ β—’ 4+ Opera βœ” 9+ β—’ 15+
Spellcheck attribute βœ” 60.31% β—’ 31.63%
IE ✘ 5.5+ βœ” 10+ Firefox βœ” Chrome ✘ 4+ βœ” 9+ Safari ✘ 3.1+ βœ” 5.1+ Opera ✘ 9+ βœ” 10.5+
Range input type βœ” 87.46% β—’ 1.18%
IE ✘ 5.5+ βœ” 10+ Firefox ✘ 2+ βœ” 23+ Chrome β€½ 4+ βœ” 5+ Safari βœ” Opera βœ”
Date and time input types βœ” 60.76% β—’ 0%
IE ✘ Firefox ✘ Chrome ✘ 4+ βœ” 20+ Safari ✘ Opera βœ”
Color input type βœ” 60.93% β—’ 3.84%
IE ✘ Firefox ✘ 2+ βœ” 29+ Chrome ✘ 4+ βœ” 20+ Safari ✘ Opera ✘ 9+ βœ” 11+ ✘ 15+ βœ” 17+
Number input type βœ” 49.95% β—’ 38.03%
IE ✘ 5.5+ β—’ 10+ Firefox ✘ 2+ βœ” 29+ Chrome ✘ 4+ βœ” 6+ Safari ✘ 3.1+ βœ” 5+ Opera βœ”
input placeholder attribute βœ” 88.04% β—’ 1.15%
IE ✘ 5.5+ βœ” 10+ Firefox ✘ 2+ βœ” 4+ Chrome βœ” Safari β—’ 3.1+ βœ” 5+ Opera ✘ 9+ β—’ 11+ βœ” 11.5+
Pointer events βœ” 8.5% β—’ 1.67%
IE ✘ 5.5+ β—’ 10+α΅– βœ” 11+ Firefox ✘ Chrome ✘ Safari ✘ 3.1+ β€½ 6.1+ Opera ✘
Web Speech API
IE ✘ Firefox ✘ Chrome ✘ 4+ β—’ 25+α΅– Safari ✘ 3.1+ β—’ 6.1+α΅– β—’ 7.1+ Opera ✘
Multiple file selection βœ” 67.63% β—’ 0%
IE ✘ 5.5+ βœ” 10+ Firefox ✘ 2+ βœ” 3.6+ Chrome ✘ 4+ βœ” 5+ Safari ✘ 3.1+ βœ” 4+ Opera ✘ 9+ βœ” 10.6+
Gamepad API βœ” 46.08% β—’ 0%
IE ✘ Firefox ✘ 2+ βœ” 29+ Chrome ✘ 4+ βœ” 21+α΅– βœ” 25+ Safari ✘ Opera ✘ 9+ βœ” 24+
Pattern attribute for input fields βœ” 72.88% β—’ 0.7%
IE ✘ 5.5+ βœ” 10+ Firefox ✘ 2+ βœ” 4+ Chrome ✘ 4+ βœ” 10+ Safari ✘ Opera ✘ 9+ βœ” 9.5-9.6+
```

Does it have lots of command line options?
------------------------------------------

Yes!

```
$ caniuse --help
Options:
Options:
--short, -s Short output: show browsers on one line and don't
display notes or description (default when displaying
multiple results) [boolean]
--long, -l Long output: show more information (default when
displaying a single result) [boolean]
--oneline, -1 One-line output: just global percentages, no per-
browser info [boolean] [default: false]
--oneline-browser, -2 One-line output with browser info, implies --abbrev and
--current [boolean] [default: false]
--abbrev, -a Abbreviate browser names [boolean] [default: false]
--percentages, -p Include browser version usage percentages
[boolean] [default: false]
--future, -f Include future browser versions
[boolean] [default: false]
--current, -c Don't include old browser versions, equivalent to --era
e0 [boolean] [default: false]
--era, -e How many versions back to go, e0 to e-40 [string]
--mobile, -m Include mobile browsers [boolean] [default: false]
--desktop, -d Include desktop browsers [boolean] [default: true]
--browser, -b Show results for these browsers, comma-separated (ie,
edge,firefox,chrome,safari,opera,ios_saf,op_mini,
android,bb,op_mob,and_chr,and_ff,ie_mob,and_uc)
[string]
--web, -w Go to the search page on caniuse.com
[boolean] [default: false]
--config, -C Path to JSON config file
[string] [default: "/Users/user/.caniuse.json"]
--ascii, -A UTF-8 symbols replacement with ASCII description
[boolean] [default: false]
--help Show help [boolean]

```

Woah, that's a lot of options! Can haz config file?
---------------------------------------------------

Yes! You can specify your own defaults by creating a file called `.caniuse.json`
and putting it in your home directory.

For example, if you're primarily interested in mobile browsers two versions back:

```
{
"era": "e-2",
"mobile": true,
"desktop": false
}

```