0.3.1 • Published 2 years ago
@wig12/browser-detection v0.3.1
Michael-Wigham's Browser Detection
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-detectionUsage
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
layoutVersionandosVersionare 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
- Giacomo Trudu - Wicker25
- Giuseppe Trotta - ohpe
- Michael Wigham - Michael-Wigham
See also the list of contributors who participated in this project.
License
Paguro's Browser Detection is MIT licensed.