@wig12/browser-detection
TypeScript icon, indicating that this package has built-in type declarations

0.3.1 • Public • Published

Michael-Wigham's Browser Detection

npm version

JavaScript library for detecting browsers and platforms using feature testing.

  • Accurate: it doesn't rely on the User-Agent string like other libraries [1] [2].

  • Solid: it's tested against a large dataset of Browser Object Model (BOM).

Getting started

To add Paguro's Browser Detection library to your project:

$ npm add @wig12/browser-detection

Usage

import BrowserDetection from '@wig12/browser-detection'; // ES6

const detectedBrowser = BrowserDetection();
console.log(detectedBrowser);

/* -- Output
  {
     browser: 'Firefox',
     browserVersion: 67,
     layout: 'Gecko',
     layoutVersion: 67,
     os: 'Windows',
     osVersion: 95
  }
*/

Detection

Browsers

Browser Detectable versions
Internet Explorer 11
Edge 44 / 80 & 120
Chrome 40 / 80 & 120
Chromium 40 / 80
Firefox 42 / 74 & 117 / 120
Safari 8 / 13
Opera 66
Brave 1.3

Layout engines

Browser Latest version
Trident -
EdgeHTML -
Gecko -
WebKit -
Blink -
KHTML -
Presto -

Operating systems

Browser Latest version
OS X -
Windows -
Linux -
Unix -
Solaris -
iOS -
Android -

Known bugs and issues

  • The fields layoutVersion and osVersion are not populated yet

Future Features

  • [ ] Support for mobile browsers
    • [ ] Chrome Android
    • [ ] Firefox for Android
    • [ ] Opera Android
    • [ ] Safari on iOS
    • [ ] Samsung Internet
    • [ ] WebView Android
  • [ ] Populate the field layoutVersion
  • [ ] Populate the field osVersion
  • [ ] Sandbox to prevent feature spoofing

Authors

See also the list of contributors who participated in this project.

License

Paguro's Browser Detection is MIT licensed.

Package Sidebar

Install

npm i @wig12/browser-detection

Weekly Downloads

3

Version

0.3.1

License

MIT

Unpacked Size

35.9 kB

Total Files

33

Last publish

Collaborators

  • wig12