npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

node-device-detector

v2.2.5

Published

Nodejs device detector (port matomo-org/device-detector)

Readme

node-device-detector

Last update: 05/12/2025

Description

Port php lib matomo-org/device-detector to NodeJs

Code Status

Chai YAML Lint Prettier CodeQL

Contents

Install

npm install node-device-detector --save

or

yarn add node-device-detector

Usage

// commonJS
const DeviceDetector = require('node-device-detector');
// or ESModule
import DeviceDetector from "node-device-detector";

const detector = new DeviceDetector({
  clientIndexes: true,
  deviceIndexes: true,
  osIndexes: true,
  deviceAliasCode: false,
  deviceTrusted: false,
  deviceInfo: false,
  maxUserAgentSize: 500,
});
const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const result = detector.detect(userAgent);
console.log('result parse', result);

Result parse

{ 
  os: { 
    name: 'Android',           // os name       
    short_name: 'AND',         // os short code name (format A-Z0-9{3})
    version: '5.0',            // os version
    platform: '',              // os platform (x64, x32, amd etc.)
    family: 'Android'          // os family
  },
  client:  { 
    type: 'browser',            // client type 
    name: 'Chrome Mobile',      // client name name
    short_name: 'CM',           // client short code name (only browser, format A-Z0-9{2,3})
    version: '43.0.2357.78',    // client version
    engine: 'Blink',            // client engine name (only browser)
    engine_version: ''          // client engine version (only browser)
    family: 'Chrome'            // client family (only browser)
  },
  device: { 
    id: 'ZT',                   // short code device brand name (format A-Z0-9{2,3})
    type: 'smartphone',         // device type
    brand: 'ZTE',               // device brand name
    model: 'Nubia Z7 max'       // device model name
    code: 'NX505J'              // device model code  (only result for enable detector.deviceAliasCode) 
    trusted: true               // device trusted (result only for enable detector.deviceTrusted and have fixture data + ClientHints are required)
    info: {}                    // device specs (result only fir enable detector.deviceInfo)
  }
}

Result parse empty

{ 
  os: {},                      // empty objects its os not found
  client: {},                  // empty objects its client not found
  device: {      
    id: '',                    // empty string its device brand not found
    type : 'device type',      // device type or empty string
    brand: '',                 // empty string its device brand not found
    model: ''                  // empty string its device model not found
  }
}

Helpers

[top]

// commonJS
const DeviceDetector = require('node-device-detector');
const DeviceHelper = require('node-device-detector/helper');
// or ESModule
import DeviceDetector from "node-device-detector";
import DeviceHelper from "node-device-detector/helper";

const detector = new DeviceDetector();
const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const result = detector.detect(userAgent);

/* check device type (feature phone, smartphone or phablet) */
DeviceHelper.isMobile(result);
/* check device type is desktop */
DeviceHelper.isDesktop(result);
/* check device type is tablet  */
DeviceHelper.isTablet(result);
/* check device type car (side panel in car)  */
DeviceHelper.isCar(result);
/* check device type feature phone (push-button telephones)  */
DeviceHelper.isFeaturePhone(result);
/* check device type smartphone  */
DeviceHelper.isSmartphone(result);
/* check device type phablet  */
DeviceHelper.isPhablet(result);
/* check device type game console (xBox, PlayStation, Nintendo etc)  */
DeviceHelper.isConsole(result);
/* check device type smart speaker (Alisa, Alexa, HomePod etc) */
DeviceHelper.isSmartSpeaker(result);
/* check device type SmartTV/TV box */
DeviceHelper.isTv(result);
/* check device type portable camera */
DeviceHelper.isCamera(result);
/* portable terminal, portable projector */
DeviceHelper.isPeripheral(result);
/* LCD panel or interactive panel  */
DeviceHelper.isSmartDisplay(result);
/* check device type boxes, blu-ray players */
DeviceHelper.isPortableMediaPlayer(result);
/* check device type watches, headsets */
DeviceHelper.isWearable(result);
/* result device type number id */
DeviceHelper.getDeviceTypeId(result);
/* result device type string */
DeviceHelper.getDeviceType(result);
/* result client type string */
DeviceHelper.getClientType(result);

Using DeviceDetector + ClientHints

[top]

// commonJS
const DeviceDetector = require('node-device-detector');
const DeviceHelper   = require('node-device-detector/helper');
const ClientHints    = require('node-device-detector/client-hints');
// or ESModule
import DeviceDetector from "node-device-detector";
import DeviceHelper from "node-device-detector/helper";
import ClientHints from "node-device-detector/client-hints";

const detector = new DeviceDetector({
  clientIndexes: true,
  deviceIndexes: true,
  osIndexes: true,
  deviceAliasCode: false,
  deviceTrusted: false,
  deviceInfo: false,
  // ... all options scroll to Setter/Getter/Options
});

/** server side use celint hinsts */
const clientHints = new ClientHints();
const userAgent = res.headers['user-agent'];
let headers = res.headers;
let meta = {}
/**
 option meta interface (needed to detect whether the device is trusted,
 this information can be obtained from browser)
 {
   width: '720',             //  Math.ceil(window.screen.width)
   height: '1440',           //  Math.ceil(window.screen.height)
   gpu: 'PowerVR SGX Doma',  //  (()=>{let e=document.createElement("canvas"),t=e.getContext("webgl")||e.getContext("experimental-webgl");return t?t.getParameter(t.getExtension("WEBGL_debug_renderer_info").UNMASKED_RENDERER_WEBGL):null})();
 }
 More details in file docs/CLIENT_HINTS_BROWSER.MD
 */
let hints = clientHints.parse(headers /* or body.hints */, meta /* or body.meta */);
const result = detector.detect(userAgent, hints);

// result promise
// added for 2.0.4 version or later
const result = detector.detectAsync(userAgent, hints);

Using parsers singly

[top]

Detect Bot

// commonJS
const DeviceDetector = require('node-device-detector');
// or ESModule
import DeviceDetector from "node-device-detector";

const userAgent = 'Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)';
const detector = new DeviceDetector();
const result = detector.parseBot(userAgent);

Detect Os

// commonJS
const DeviceDetector = require('node-device-detector');
// or ESModule
import DeviceDetector from "node-device-detector";

const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const detector = new DeviceDetector({
  clientIndexes: true,
  osIndexes: true,
  deviceIndexes: true,
  deviceAliasCode: false,
});
const result = detector.parseOs(userAgent/*, clientHintData*/);
console.log('Result parse os', result);  

Detect Client

// commonJS
const DeviceDetector = require('node-device-detector');
// or ESModule
import DeviceDetector from "node-device-detector";

const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const detector = new DeviceDetector({
    clientIndexes: true,
    deviceIndexes: true,
    osIndexes: true,
    deviceAliasCode: false,
});
const result = detector.parseClient(userAgent/*, clientHintData*/);
console.log('Result parse client', result);

Lite parse not detect brand

// commonJS
const DeviceDetector = require('node-device-detector');
// or ESModule
import DeviceDetector from "node-device-detector";

const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const detector = new DeviceDetector({
  clientIndexes: true,
  deviceIndexes: true,
  osIndexes: true,
  deviceAliasCode: false,
});
const resultOs = detector.parseOs(userAgent);
const resultClient = detector.parseClient(userAgent);
const resultDeviceType = detector.parseDeviceType(
 userAgent,
 resultOs,
 resultClient,
 {},
 /*, clientHintData */
);
const result = Object.assign({os:resultOs}, {client:resultClient}, {device: resultDeviceType});
console.log('Result parse lite', result);

Getter/Setter/Options

[top]

const detector = new DeviceDetector({
  osVersionTruncate: 0,      // Truncate OS version from 5.0 to 5 (default '' or null)
  clientVersionTruncate: 2,  // Truncate Client version Chrome from 43.0.2357.78 to 43.0.2357 (default '' or null)
  deviceIndexes: true,       // Using indexes for faster device search (default false)
  clientIndexes: true,       // Using indexes for faster client search (default false)
  osIndexes: true,           // Using indexes for faster os search (default false)
  deviceAliasCode: true,     // adds device code to result [device.code] as is (default false)
  maxUserAgentSize: 500,     // uses only 500 chars from useragent string (default null - unlimited)
  deviceTrusted: true,       // check device by specification (default false)
  deviceInfo: true,          // adds device specification to result [device.info] (default false)
});

// You can override these settings at any time using special setters, example
detector.osVersionTruncate = 0;
detector.clientVersionTruncate = 2;
detector.deviceIndexes = true;
detector.clientIndexes = true;
detector.osIndexes = true;
detector.deviceAliasCode = true;
detector.maxUserAgentSize = 500;
detector.deviceTrusted = true;
detector.deviceInfo = true;

// Array available device types
detector.getAvailableDeviceTypes();
// Array available devices brands
detector.getAvailableBrands();
// Array available browsers
detector.getAvailableBrowsers();

Specific methods

const DEVICE_PARSER_NAMES = detector.getDeviceParserNames(); // result colection names for device parsers 
const CLIENT_PARSER_NAMES = detector.getClientParserNames(); // result colection names for client parsers 
const OS_PARSER_NAMES = detector.getOsParserNames();         // result collection names for os parsers
const BOT_PARSER_NAMES = detector.getBotParserNames();       // result collection names for bot parsers   

const aliasDevice = detector.getParseAliasDevice();          // result AliasDevice parser
const deviceInfo = detector.getParseInfoDevice();            // result InfoDevice parser

// added custom parser
detector.addParseDevice('MyDeviceParser', new MyDeviceParser());
detector.addParseClient('MyClientParser', new MyClientParser());
detector.addParseOs('MyOsParser', new MyOsParser());
detector.addParseBot('MyBotParser', new MyBotParser());
// get single parser by name
detector.getParseDevice('MyDeviceParser' /* or DEVICE_PARSER_NAMES.MOBILE */);
detector.getParseClient('MyClientParser'  /* or CLIENT_PARSER_NAMES.BROWSER */);
detector.getParseOs('MyOsParser'/* or OS_PARSER_NAMES.DEFAULT */);
detector.getParseBot('MyBotParser');

Getting device code as it (experimental)

[top]

const DeviceDetector = require('node-device-detector');
const detector = new DeviceDetector()
const aliasDevice = detector.getParseAliasDevice();
const result = aliasDevice.parse(userAgent);
console.log('Result parse code model', result);
// or
const AliasDevice = require('node-device-detector/parser/device/alias-device');
const userAgent = 'Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36';
const aliasDevice = new AliasDevice();
const result = aliasDevice.parse(userAgent);
console.log('Result parse code model', result);

/*
result 
{
  name: "NX505J"
}
is not parse result  {name: ""}
*/

What about performance?

node tests/banchmark.js test result:

UA Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36
-----
┌──────────────────────┬─────────┬──────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼──────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │ '20,235' │    '±0.26%'     │      98      │
│ detector.parseClient │  'on'   │ '46,058' │    '±0.34%'     │      98      │
│   detector.parseOS   │  'on'   │ '20,317' │    '±0.32%'     │      97      │
│   detector.detect    │  'on'   │ '7,526'  │    '±0.76%'     │      92      │
└──────────────────────┴─────────┴──────────┴─────────────────┴──────────────┘
UA Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
-----
detector.parseDevice x 295,672 ops/sec ±0.79% (96 runs sampled)
detector.parseClient x 60,996 ops/sec ±0.60% (99 runs sampled)
detector.parseOS x 35,174 ops/sec ±0.28% (97 runs sampled)
detector.detect x 16,631 ops/sec ±0.21% (96 runs sampled)
┌──────────────────────┬─────────┬───────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │  ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼───────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │ '295,672' │    '±0.79%'     │      96      │
│ detector.parseClient │  'on'   │ '60,996'  │    '±0.60%'     │      99      │
│   detector.parseOS   │  'on'   │ '35,174'  │    '±0.28%'     │      97      │
│   detector.detect    │  'on'   │ '16,631'  │    '±0.21%'     │      96      │
└──────────────────────┴─────────┴───────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Linux; Android 12; M2101K9AG Build/SKQ1.210908.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/102.0.5005.125 Mobile Safari/537.36 UCURSOS/v1.6_273-android
┌──────────────────────┬─────────┬──────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼──────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │ '13,671' │    '±0.42%'     │      96      │
│ detector.parseClient │  'on'   │ '9,154'  │    '±0.26%'     │      98      │
│   detector.parseOS   │  'on'   │ '15,087' │    '±0.36%'     │      99      │
│   detector.detect    │  'on'   │ '3,192'  │    '±0.29%'     │      97      │
└──────────────────────┴─────────┴──────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 239.2.0.17.109 (iPhone9,3; iOS 15_5; it_IT; it-IT; scale=2.00; 750x1334; 376668393) NW/3
┌──────────────────────┬─────────┬───────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │  ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼───────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │  '6,570'  │    '±0.30%'     │      98      │
│ detector.parseClient │  'on'   │ '113,007' │    '±0.41%'     │      99      │
│   detector.parseOS   │  'on'   │ '18,882'  │    '±0.24%'     │      99      │
│   detector.detect    │  'on'   │  '3,849'  │    '±0.46%'     │      97      │
└──────────────────────┴─────────┴───────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Linux; Android 8.0.0; RNE-L21) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Mobile Safari/537.36
┌──────────────────────┬─────────┬──────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼──────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │ '3,951'  │    '±0.37%'     │      97      │
│ detector.parseClient │  'on'   │ '47,425' │    '±0.28%'     │      93      │
│   detector.parseOS   │  'on'   │ '21,305' │    '±0.39%'     │      96      │
│   detector.detect    │  'on'   │ '2,587'  │    '±0.39%'     │      98      │
└──────────────────────┴─────────┴──────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.124 Safari/537.36 Edg/102.0.1245.44
┌──────────────────────┬─────────┬───────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │  ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼───────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'on'   │ '280,116' │    '±1.63%'     │      97      │
│ detector.parseClient │  'on'   │ '58,553'  │    '±0.31%'     │      98      │
│   detector.parseOS   │  'on'   │ '38,153'  │    '±0.31%'     │      94      │
│   detector.detect    │  'on'   │ '15,530'  │    '±0.73%'     │      96      │
└──────────────────────┴─────────┴───────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
┌──────────────────────┬─────────┬───────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │  ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼───────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │ '584,609' │    '±0.30%'     │      96      │
│ detector.parseClient │  'off'  │   '668'   │    '±70.73%'    │      97      │
│   detector.parseOS   │  'off'  │  '4,355'  │    '±0.31%'     │      98      │
│   detector.detect    │  'off'  │   '774'   │    '±0.23%'     │      96      │
└──────────────────────┴─────────┴───────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Linux; Android 5.0; NX505J Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36
┌──────────────────────┬─────────┬─────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec │ margin of error │ runs sampled │
├──────────────────────┼─────────┼─────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │  '343'  │    '±49.33%'    │      94      │
│ detector.parseClient │  'off'  │  '526'  │    '±0.26%'     │      97      │
│   detector.parseOS   │  'off'  │ '3,694' │    '±0.23%'     │      97      │
│   detector.detect    │  'off'  │  '220'  │    '±27.12%'    │      87      │
└──────────────────────┴─────────┴─────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Linux; Android 12; M2101K9AG Build/SKQ1.210908.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/102.0.5005.125 Mobile Safari/537.36 UCURSOS/v1.6_273-android
┌──────────────────────┬─────────┬─────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec │ margin of error │ runs sampled │
├──────────────────────┼─────────┼─────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │  '424'  │    '±0.25%'     │      95      │
│ detector.parseClient │  'off'  │ '6,414' │    '±0.43%'     │      96      │
│   detector.parseOS   │  'off'  │ '7,193' │    '±0.33%'     │      96      │
│   detector.detect    │  'off'  │  '268'  │    '±30.56%'    │      93      │
└──────────────────────┴─────────┴─────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 239.2.0.17.109 (iPhone9,3; iOS 15_5; it_IT; it-IT; scale=2.00; 750x1334; 376668393) NW/3
┌──────────────────────┬─────────┬──────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼──────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │ '2,990'  │    '±0.33%'     │      97      │
│ detector.parseClient │  'off'  │ '34,868' │    '±0.21%'     │      99      │
│   detector.parseOS   │  'off'  │ '3,379'  │    '±0.42%'     │      95      │
│   detector.detect    │  'off'  │ '1,274'  │    '±0.24%'     │      99      │
└──────────────────────┴─────────┴──────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Linux; Android 8.0.0; RNE-L21) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Mobile Safari/537.36
┌──────────────────────┬─────────┬─────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │ ops/sec │ margin of error │ runs sampled │
├──────────────────────┼─────────┼─────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │  '603'  │    '±84.34%'    │      97      │
│ detector.parseClient │  'off'  │  '583'  │    '±0.38%'     │      97      │
│   detector.parseOS   │  'off'  │ '9,073' │    '±0.33%'     │      96      │
│   detector.detect    │  'off'  │  '272'  │    '±28.33%'    │      90      │
└──────────────────────┴─────────┴─────────┴─────────────────┴──────────────┘
-----
UA Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.124 Safari/537.36 Edg/102.0.1245.44
┌──────────────────────┬─────────┬───────────┬─────────────────┬──────────────┐
│    parse method      │ indexes │  ops/sec  │ margin of error │ runs sampled │
├──────────────────────┼─────────┼───────────┼─────────────────┼──────────────┤
│ detector.parseDevice │  'off'  │ '223,548' │    '±0.36%'     │      96      │
│ detector.parseClient │  'off'  │  '1,268'  │    '±0.47%'     │      99      │
│   detector.parseOS   │  'off'  │  '4,509'  │    '±0.59%'     │      94      │
│   detector.detect    │  'off'  │   '880'   │    '±0.25%'     │      96      │
└──────────────────────┴─────────┴───────────┴─────────────────┴──────────────┘

What about tests?

Yes we use tests, total tests: ~84.7k

Get more information about a device (experimental)

This parser is experimental and contains few devices. (2156 devices, alias devices 3995)

Support detail brands/models list:

| Brand | Device count | Alias count | - | Brand | Device count | Alias count | |----|----|----|----|----|----|----| | 360 | 12 | 13 | - | 8848 | 4 | 0 | | 2e | 2 | 2 | - | 3q | 2 | 37 | | 4good | 10 | 1 | - | ace | 8 | 0 | | acer | 5 | 4 | - | agm | 4 | 1 | | ainol | 2 | 2 | - | airo wireless | 1 | 0 | | airtel | 1 | 0 | - | akai | 2 | 1 | | alcatel | 25 | 154 | - | alcor | 1 | 0 | | alldocube | 2 | 1 | - | allview | 97 | 7 | | altek | 1 | 0 | - | amazon | 19 | 10 | | amgoo | 2 | 2 | - | amoi | 62 | 0 | | apple | 46 | 101 | - | archos | 89 | 7 | | arian space | 4 | 4 | - | ark | 1 | 1 | | asanzo | 1 | 0 | - | assistant | 2 | 2 | | asus | 80 | 242 | - | at&t | 1 | 1 | | atol | 1 | 1 | - | avenzo | 1 | 2 | | avh | 1 | 0 | - | avvio | 3 | 4 | | barnes & noble | 1 | 0 | - | bb mobile | 2 | 2 | | beeline | 11 | 1 | - | bellphone | 1 | 1 | | bezkam | 1 | 0 | - | bigben | 1 | 0 | | bihee | 2 | 0 | - | billion | 1 | 1 | | biorugged | 1 | 0 | - | bird | 1 | 0 | | bitel | 4 | 0 | - | bitmore | 2 | 1 | | bittium | 1 | 0 | - | bkav | 1 | 0 | | black bear | 2 | 0 | - | black fox | 18 | 18 | | blackview | 97 | 19 | - | blu | 23 | 16 | | bravis | 24 | 16 | - | byju\'s | 1 | 1 | | cgv | 1 | 0 | - | clarmin | 3 | 0 | | cobalt | 1 | 0 | - | colors | 7 | 2 | | cyrus | 1 | 1 | - | dewalt | 1 | 0 | | deyi | 1 | 1 | - | dialog | 1 | 0 | | digi | 6 | 0 | - | digidragon | 3 | 0 | | digifors | 1 | 1 | - | doogee | 3 | 1 | | engel | 1 | 1 | - | estar | 2 | 0 | | evoo | 1 | 0 | - | firefly mobile | 4 | 0 | | formuler | 2 | 0 | - | geotel | 3 | 0 | | gionee | 4 | 0 | - | glocalme | 1 | 0 | | google | 3 | 4 | - | hafury | 1 | 0 | | hisense | 2 | 0 | - | hoffmann | 1 | 1 | | hotwav | 18 | 2 | - | huawei | 217 | 665 | | i-mobile | 1 | 0 | - | imo mobile | 5 | 5 | | infinix | 26 | 42 | - | inoi | 4 | 0 | | intex | 18 | 4 | - | ipro | 6 | 6 | | irbis | 15 | 0 | - | just5 | 1 | 0 | | kalley | 3 | 1 | - | kapsys | 1 | 0 | | kiowa | 1 | 0 | - | krip | 3 | 0 | | kurio | 3 | 3 | - | kzen | 1 | 0 | | lava | 1 | 1 | - | lg | 117 | 393 | | malata | 1 | 0 | - | maze | 4 | 0 | | minix | 1 | 1 | - | mipo | 2 | 0 | | miray | 1 | 0 | - | mitsui | 1 | 0 | | mivo | 3 | 1 | - | mobicel | 3 | 2 | | motorola | 28 | 39 | - | newland | 1 | 0 | | noa | 1 | 0 | - | nomi | 1 | 1 | | nuu mobile | 9 | 8 | - | nuvo | 3 | 2 | | oneplus | 18 | 55 | - | oppo | 109 | 241 | | oukitel | 8 | 0 | - | öwn | 1 | 2 | | palm | 1 | 2 | - | panasonic | 5 | 4 | | parrot mobile | 1 | 0 | - | pipo | 5 | 1 | | pixpro | 1 | 0 | - | poco | 9 | 26 | | premier | 1 | 0 | - | realme | 66 | 116 | | samsung | 166 | 971 | - | sankey | 1 | 0 | | sansui | 1 | 0 | - | senseit | 2 | 0 | | sharp | 2 | 5 | - | sony | 37 | 169 | | sprint | 2 | 0 | - | supra | 1 | 0 | | tecno mobile | 91 | 162 | - | teracube | 2 | 0 | | tiphone | 1 | 0 | - | tps | 1 | 0 | | ulefone | 8 | 0 | - | utok | 1 | 0 | | uz mobile | 1 | 0 | - | vernee | 9 | 2 | | viewsonic | 1 | 0 | - | visual land | 2 | 2 | | vivo | 203 | 325 | - | walton | 112 | 2 | | we | 8 | 0 | - | weimei | 1 | 0 | | wiko | 7 | 16 | - | wileyfox | 9 | 1 | | wink | 4 | 0 | - | winmax | 1 | 0 | | x-age | 1 | 1 | - | xiaomi | 9 | 26 | | yumkem | 1 | 0 | - | zen | 1 | 0 | | zik | 1 | 0 | - | zync | 2 | 1 | | zyq | 1 | 1 | - | | | |

const DeviceDetector = require('node-device-detector');
const detector = new DeviceDetector();
const infoDevice = detector.getParseInfoDevice();
const result = infoDevice.info('Asus', 'Zenfone 4');
console.log('Result information', result);
// or 
const InfoDevice = require('node-device-detector/parser/device/info-device');
const infoDevice = new InfoDevice();
const result = infoDevice.info('Asus', 'Zenfone 4');
console.log('Result information', result);

/*
result
{
  display: {
    size: '5.5',
    resolution: '1080x1920',  // width+height
    ratio: '16:9',
    ppi: "401"
  },
  size: '155.4x75.2x7.7',    // width+height+thickness
  weight: '165',
  hardware: {
    // ...
  }
  os: "Android 7.1",
  release: "2017.08",
  sim": "2",
}
is not found result null
*/

Cast methods

const InfoDevice = require('node-device-detector/parser/device/info-device');
const infoDevice = new InfoDevice;
infoDevice.setSizeConvertObject(true);
infoDevice.setResolutionConvertObject(true);
const result = infoDevice.info('Asus', 'Zenfone 4');
console.log('Result information', result);
/*
result
{  
  display: {
    size: "5.5",  // value in inchs
    resolution: {
      width: "1080", // value in px
      height: "1920" // value in px
    },
    ratio: "16:9",   // calculated field
    ppi: "401"       // calculated field
  },
  hardware: {
    ram: "4096",   // RAM value in megabytes
    cpu_id: 19,  // id cpu model in collection
    cpu: {
      name: "Qualcomm Snapdragon 630",  // brand + name
      type: "ARM",                      // architecture type 
      cores: "8",                       // number of cores / threads 
      clock_rate: 2200,                 // value in MHz
      gpu_id: 16                        // id gpu model in collection
	},
    gpu: {
      name: "Qualcomm Adreno 508",
      clock_rate: 650
    }
  },
  os: "Android 7.1",   // initial OS version
  release: "2017.08",  // date release or anonce
  sim": "2",           // count SIM 
  size: {           
    width: "75.2",     // physical width in millimeters
    height: "155.4",   // physical height in millimeters
    thickness: "7.7"   // physical thickness in millimeters
  },
  weight: "165"        // in grams
};
*/

Others

[top]

Examples

Support detect brands list (2103):

Brand | Brand | Brand | Brand | Brand | Brand | Brand --- | --- | --- | --- | --- | --- | --- 10moons | 2E | 360 | 3GNET | 3GO | 3Q | 4Good 4ife | 5IVE | 7 Mobile | 8848 | A&K | A1 | A95X AAUW | Accent | Accesstyle | ACD | Ace | Aceline | Acepad Acer | Acteck | actiMirror | Adreamer | Adronix | Advan | Advance Advantage Air | AEEZO | AFFIX | AfriOne | AG Mobile | AGM | AI+ AIDATA | AileTV | Ainol | Airis | Airness | AIRON | Airpha Airtel | Airties | AirTouch | AIS | Aiuto | Aiwa | Ajib Akai | AKIRA | Alba | Alcatel | Alcor | ALDI NORD | ALDI SÜD Alfawise | Alienware | Aligator | All Star | AllCall | AllDocube | allente ALLINmobile | Allview | Allwinner | Alps | alpsmart | Altech UEC | Altibox Altice | Altimo | altron | Altus | AMA | Amazon | Amazon Basics AMCV | AMGOO | Amigoo | Amino | Amoi | ANBERNIC | ANCEL andersson | Andowl | Angelcare | AngelTech | Anker | Anry | ANS ANXONIT | AOC | Aocos | Aocwei | AOpen | Aoro | Aoson AOYODKG | ApoloSign | Apple | Aquarius | Arçelik | Archos | Arian Space Arival | Ark | ArmPhone | Arnova | ARRIS | Artel | Artizlee ArtLine | Asano | Asanzo | Ask | Aspera | ASSE | Assistant astro (MY) | Astro (UA) | Asus | AT&T | Athesi | Atlantic Electrics | Atmaca Elektronik ATMAN | ATMPC | ATOL | Atom | Atouch | Atozee | Attila Atvio | Audiovox | AUPO | AURIS | Autan | AUX | Avaya Avenzo | AVH | Avvio | Awow | AWOX | AXEN | Axioo AXXA | Axxion | AYA | AYYA | Azeyou | AZOM | Azumi Mobile Azupik | b2m | Backcell | BAFF | BangOlufsen | Barnes & Noble | BARTEC BASE | BAUHN | BB Mobile | BBK | BDF | BDQ | BDsharing Beafon | Becker | Beeline | Beelink | Beetel | Beista | Beko Bell | Bellphone | Benco | Benesse | BenQ | BenQ-Siemens | BenWee Benzo | Beyond | Bezkam | BGH | Biegedy | Bigben | BIHEE BilimLand | Billion | Billow | BioRugged | Bird | Bitel | Bitmore Bittium | Bkav | Black Bear | Black Box | Black Fox | Blackpcs | Blackphone Blackton | Blackview | Blaupunkt | Bleck | BLISS | Blloc | Blow Blu | Bluboo | Bluebird | Bluedot | Bluegood | BlueSky | Bluewave BluSlate | BMAX | Bmobile | BMW | BMXC | BNCF | Bobarry bogo | Bolva | Bookeen | Boost | Botech | Boway | bq Bqeel | BrandCode | Brandt | BRAVE | Bravis | BrightSign | Brigmton Brondi | BROR | BS Mobile | Bubblegum | Bundy | Bush | BuzzTV BYD | BYJU'S | BYYBUO | C Idea | C5 Mobile | CADENA | CAGI Caixun | CALME | Camfone | Canaima | Canal Digital | Canal+ | Canguro Capitel | Captiva | Carbon Mobile | Carrefour | Casio | Casper | Cat Cavion | CCIT | Cecotec | Ceibal | Celcus | Celkon | Cell-C Cellacom | CellAllure | Cellution | CENTEK | Centric | CEPTER | CG Mobile CGV | Chainway | Changhong | CHCNAV | Cherry Mobile | Chico Mobile | ChiliGreen China Mobile | China Telecom | Chuwi | CipherLab | Citycall | CKK Mobile | Claresta Clarmin | CLAYTON | ClearPHONE | Clementoni | Cloud | Cloudfone | Cloudpad Clout | Clovertek | CMF | CnM | Cobalt | Coby Kyros | Cogeco COLORROOM | Colors | Comio | CommScope | Compal | Compaq | COMPUMAX ComTrade Tesla | Conceptum | Concord | ConCorde | Condor | Connectce | Connex Conquest | CONSUNG | Continental Edison | Contixo | coocaa | COOD-E | Coolpad Coopers | CORN | Cosmote | Covia | Cowon | COYOTE | CPDEVICE CreNova | Crescent | Crestron | Cricket | Crius Mea | Crony | Crosscall Crown | Ctroniq | Cube | CUBOT | CUD | Cuiud | Cultraview CVTE | Cwowdefu | CX | Cyrus | D-Link | D-Tech | Daewoo Danew | DangcapHD | Dany | Daria | DASS | Datalogic | Datamini Datang | Datawind | Datsun | Dawlance | Dazen | DbPhone | Dbtel Dcode | DEALDIG | Dell | Denali | Denka | Denver | Desay DeWalt | DEXP | DEYI | DF | DGTEC | DIALN | Dialog Dicam | Digi | Digicel | DIGICOM | Digidragon | DIGIFORS | Digihome Digiland | Digit4G | Digma | DIJITSU | DIKOM | DIMO | Dinalink Dinax | DING DING | Diofox | DIORA | DISH | Disney | Ditecma Diva | DiverMax | Divisat | DIXON | DL | DMM | DMOAO DNS | DoCoMo | Doffler | Dolamee | Dom.ru | Doogee | Doopro Doov | Dopod | Doppio | Dora | DORLAND | Doro | DPA DRAGON | Dragon Touch | Dreamgate | DreamStar | DreamTab | Droidlogic | Droxio DSDevices | DSIC | Dtac | DUDU AUTO | Dune HD | DUNNS Mobile | DuoTV Durabook | Duubee | Dykemann | Dyon | E-Boda | E-Ceros | E-TACHI E-tel | Eagle | EagleSoar | EAS Electric | Easypix | EBEN | EBEST Echo Mobiles | ecom | ECON | ECOO | EcoStar | ECS | Edanix Edenwood | EE | EFT | EGL | EGOTEK | Ehlel | Einstein EKINOX | EKO | Eks Mobility | EKT | ELARI | ELE-GATE | Elecson Electroneum | ELECTRONIA | Elekta | Elektroland | Element | Elenberg | Elephone Elevate | Elista | elit | Elong Mobile | Eltex | Ematic | Emporia ENACOM | ENDURO | Energizer | Energy Sistem | Engel | ENIE | Enot eNOVA | Entity | Envizen | Ephone | Epic | Epik One | Eplutus Epson | Equator | Ergo | Ericsson | Ericy | Erisson | Essential Essentielb | eSTAR | ETOE | Eton | eTouch | Etuline | Eudora Eurocase | EUROLUX | Eurostar | Evercoss | Everest | Everex | Everfine Everis | Evertek | Evolio | Evolveo | Evoo | EVPAD | EvroMedia evvoli | EWIS | EXCEED | Exmart | ExMobile | EXO | Explay Express LUCK | ExtraLink | Extrem | Eyemoo | EYU | Ezio | Ezze F&U | F+ | F150 | F2 Mobile | Facebook | Facetel | Facime Fairphone | Famoco | Famous | Fantec | Fanvace | FaRao Pro | Farassoo FarEasTone | Fengxiang | Fenoti | FEONAL | Fero | FFF SmartLife | Figgers FiGi | FiGO | FiiO | Filimo | FILIX | FinePower | FINIX Finlux | FireFly Mobile | FISE | Fision | FITCO | Fluo | Fly FLYCAT | FLYCOAY | FMT | FNB | FNF | Fobem | Fondi Fonos | FONTEL | FOODO | FORME | Formovie | Formuler | Forstar Fortis | FortuneShip | FOSSiBOT | Four Mobile | Fourel | Foxconn | FoxxD FPT | free | Freetel | FreeYond | FRESH | Frunsi | Fuego FUJICOM | Fujitsu | Funai | Fusion5 | Future Mobile Technology | Fxtec | G-Guard G-PLUS | G-TiDE | G-Touch | G-Vill | Galactic | Galatec | Galaxy Innovations Gamma | Garmin-Asus | Gateway | Gazal | Gazer | GDL | Geanee Geant | Gear Mobile | Gemini | General Mobile | Genesis | Genius Devices | Geo Phone GEOFOX | Geotel | Geotex | GEOZON | Getnord | GFive | Gfone Ghia | Ghong | Ghost | Gigabyte | Gigaset | Gini | Ginzzu Gionee | GIRASOLE | GlobalSec | Globex | Globmall | GlocalMe | Glofiish GLONYX | Glory Star | GLX | GN Electronics | GOCLEVER | Gocomma | GoGEN Gol Mobile | GOLDBERG | GoldMaster | GoldStar | Goly | Gome | GoMobile GOODTEL | Google | Goophone | Gooweel | GOtv | Gplus | Gradiente Graetz | Grape | Great Asia | Gree | Green Lion | Green Orange | Greentel Gresso | Gretel | GroBerwert | Grünberg | Grundig | Gtel | GTMEDIA GTX | Guophone | GVC Pro | H133 | H96 | Hafury | Haier Haipai | Haixu | Hamlet | Hammer | Handheld | HannSpree | Hanseatic Hanson | HAOQIN | HAOVM | Hardkernel | Harper | Hartens | Hasee Hathway | HAVIT | HDC | HeadWolf | HEC | Heimat | Helio Hemilton | HERO | HexaByte | Hezire | Hi | Hi Nova | Hi-Level Hiberg | HiBy | High Q | HIGH1ONE | Highscreen | HiGrace | HiHi HiKing | HiMax | HIPER | Hipstreet | Hiremco | Hisense | Hitachi Hitech | HKC | HKPro | HLLO | HMD | hoco | HOFER Hoffmann | HOLLEBERG | Homatics | Hometech | HOMII | Homtom | Honeywell HongTop | HONKUAHG | Honor | Hoozo | Hopeland | Horion | Horizon Horizont | Hosin | Hot Pepper | HOTACK | Hotel | HOTREALS | Hotwav How | HP | HTC | Huadoo | Huagan | Huavi | Huawei Hugerock | Humanware | Humax | HUMElab | Hurricane | Huskee | Hyatta Hykker | Hyrican | Hytera | Hyundai | Hyve | I KALL | i-Cherry I-INN | i-Joy | i-mate | i-mobile | I-Plus | iBall | iBerry ibowin | iBrit | IconBIT | Icone Gold | iData | IDC | iDino iDroid | iFIT | iGet | iHome Life | iHunt | Ikea | IKI Mobile iKoMo | iKon | iKonia | IKU Mobile | iLA | iLepo | iLife iMan | Imaq | iMars | iMI | IMO Mobile | Imose | Impression iMuz | iNavi | INCAR | Inch | Inco | Indurama | iNew Infiniton | InfinityPro | Infinix | InFocus | InfoKit | Infomir | InFone Inhon | Inka | Inkti | InnJoo | Innos | Innostream | iNo Mobile Inoi | iNOVA | inovo | INQ | Insignia | INSYS | Intek Intel | Intex | Invens | Inverto | Invin | iOcean | IOTWE iOutdoor | iPEGTOP | iPro | iQ&T | IQM | IRA | Irbis iReplace | Iris | iRobot | iRola | iRulu | iSafe Mobile | iStar iSWAG | IT | iTel | iTruck | IUNI | iVA | iView iVooMi | ivvi | iWaylink | iXTech | iYou | iZotron | Jambo JAY-Tech | Jedi | Jeep | Jeka | Jesy | JFone | Jiake Jiayu | Jin Tu | Jinga | Jio | Jivi | JKL | Jolla Joy | JoySurf | JPay | JREN | Jumper | Juniper Systems | Just5 JUSYEA | JVC | JXD | K-Lite | K-Touch | Kaan | Kaiomy Kalley | Kanji | Kapsys | Karbonn | Kata | KATV1 | Kazam Kazuna | KDDI | Kempler & Strauss | Kenbo | Kendo | Keneksi | KENSHI KENWOOD | Kenxinda | KGTEL | Khadas | Kiano | kidiby | Kingbox Kingstar | Kingsun | KINGZONE | Kinstone | Kiowa | Kivi | Klipad KMC | KN Mobile | Kocaso | Kodak | Kogan | Komu | Konka Konrow | Koobee | Koolnee | Kooper | KOPO | Korax | Koridy Koslam | Kraft | KREZ | KRIP | KRONO | Krüger&Matz | KT-Tech KTC | KUBO | KuGou | Kuliao | Kult | Kumai | Kurio KVADRA | Kvant | Kydos | Kyocera | Kyowon | Kzen | KZG L-Max | LAIQ | Land Rover | Landvo | Lanin | Lanix | Lark Laser | Laurus | Lava | LCT | Le Pan | Leader Phone | Leagoo Leben | LeBest | Lectrus | Ledstar | LeEco | Leelbox | Leff Legend | Leke | Lemco | LEMFO | Lemhoov | Lenco | Lenovo Leotec | Lephone | Lesia | Lexand | Lexibook | LG | Liberton Lifemaxx | Lime | Lingbo | Lingwin | Linnex | Linsar | Linsay Listo | LNMBBS | Loewe | LOGAN | Logic | Logic Instrument | Logicom Logik | Logitech | LOKMAT | LongTV | Loview | Lovme | LPX-G LT Mobile | Lumigon | Lumitel | Lumus | Luna | LUNNEN | LUO Luxor | Lville | LW | LYF | LYOTECH LABS | M-Horse | M-KOPA M-Tech | M.T.T. | M3 Mobile | M4tel | MAC AUDIO | Macoox | Mafe MAG | MAGCH | Magenta | Magicsee | Magnus | Majestic | Malata Mango | Manhattan | Mann | Manta Multimedia | Mantra | Mara | Marshal Mascom | Massgo | Masstel | Master-G | Mastertech | Matco Tools | Matrix Maunfeld | Maxcom | Maxfone | Maximus | Maxtron | MAXVI | Maxwell Maxwest | MAXX | Maze | Maze Speed | MBI | MBK | MBOX McLaut | MDC Store | MDTV | meanIT | Mecer | MECHEN | Mecool Mediacom | Medion | MEEG | MEGA VISION | Megacable | MegaFon | MEGAMAX Meitu | Meizu | Melrose | MeMobile | Memup | MEO | MESWAO Meta | Metz | MEU | MicroMax | Microsoft | Microtech | Mightier Minix | Mint | Mintt | Mio | Mione | mipo | Miray Mitchell & Brown | Mito | Mitsubishi | Mitsui | MIVO | MIWANG | MIXC MiXzo | MLAB | MLLED | MLS | MMI | Mobell | Mobicel MobiIoT | Mobiistar | Mobile Kingdom | Mobiola | Mobistel | MobiWire | Mobo Mobvoi | Mode Mobile | Modecom | Mofut | Moondrop | MORTAL | Mosimosi Motiv | Motorola | Motorola Solutions | Movic | MOVISUN | Movitel | Moxee mPhone | Mpman | MSI | MStar | MTC | MTN | multibox Multilaser | MultiPOS | MULTYNET | MwalimuPlus | MYFON | MyGica | MygPad Mymaga | MyMobile | MyPhone (PH) | myPhone (PL) | Myria | Myros | Mystery MyTab | MyWigo | N-one | Nabi | NABO | Nanho | Naomi Phone NASCO | National | Navcity | Navitech | Navitel | Navon | NavRoad NEC | Necnot | Nedaphone | Neffos | NEKO | Neo | neoCore Neolix | Neomi | Neon IQ | Neoregent | Nesons | NetBox | Netgear Netmak | NETWIT | NeuImage | NeuTab | NEVIR | New Balance | New Bridge Newal | Newgen | Newland | Newman | Newsday | NewsMy | Nexa Nexar | NEXBOX | Nexian | NEXON | NEXT | Next & NextStar | Nextbit NextBook | NextTab | NG Optics | NGM | NGpon | Nikon | NILAIT NINETEC | NINETOLOGY | Nintendo | nJoy | NOA | Noain | Nobby Noblex | NOBUX | noDROPOUT | NOGA | Nokia | Nomi | Nomu Noontec | Nordfrost | Nordmende | NORMANDE | NorthTech | Nos | Nothing Nous | Novacom | Novex | Novey | NOVIS | NoviSea | NOVO NTT West | NuAns | Nubia | NUU Mobile | NuVision | Nuvo | Nvidia NYX Mobile | O+ | O2 | Oale | Oangcc | OASYS | Obabox Ober | Obi | OCEANIC | Odotpad | Odys | Oilsky | OINOM ok. | Okapi | Okapia | Oking | OKSI | OKWU | Olax Olkya | Ollee | OLTO | Olympia | OMIX | Onda | OneClick OneLern | OnePlus | Onida | Onix | Onkyo | ONN | ONVO ONYX BOOX | Ookee | Ooredoo | OpelMobile | Openbox | Ophone | OPPO Opsson | Optoma | Orange | Orange Pi | Orava | Orbic | Orbita Orbsmart | Ordissimo | Orion | OSCAL | OTTO | OUJIA | Ouki Oukitel | OUYA | Overmax | Ovvi | öwn | Owwo | OX TAB OYSIN | Oysters | Oyyu | OzoneHD | P-UP | Pacific Research Alliance | Packard Bell Padpro | PAGRAER | Paladin | Palm | Panacom | Panasonic | Panavox Pano | Panodic | Panoramic | Pantech | PAPYRE | Parrot Mobile | Partner Mobile PC Smart | PCBOX | PCD | PCD Argentina | PEAQ | Pelitt | Pendoo Penta | Pentagram | Perfeo | Phicomm | Philco | Philips | Phonemax phoneOne | Pico | PINE64 | Pioneer | Pioneer Computers | PiPO | PIRANHA Pixela | Pixelphone | PIXPRO | Pixus | Planet Computers | Platoon | Play Now PLDT | Ployer | Plum | PlusStyle | Pluzz | PocketBook | POCO Point Mobile | Point of View | Polar | PolarLine | Polaroid | Polestar | PolyPad Polytron | Pomp | Poppox | POPTEL | Porsche | Portfolio | Positivo Positivo BGH | PPDS | PPTV | Premier | Premio | Prestigio | PRIME Primepad | Primux | PRISM+ | Pritom | Prixton | PROFiLO | Proline Prology | ProScan | PROSONIC | Protruly | ProVision | PULID | Punos Purism | PVBox | Q-Box | Q-Touch | Q.Bell | QFX | Qilive QIN | Qiuwoky | QLink | QMobile | Qnet Mobile | QTECH | Qtek Quantum | Quatro | Qubo | Quechua | Quest | Quipus | Qumo Qupi | Qware | QWATT | R-TV | R3Di | Rakuten | Ramos Raspberry | Ravoz | Raylandz | Razer | RAZZ | RCA Tablets | RCT Reach | Readboy | Realix | Realme | RED | RED-X | Redbean Redfox | RedLine | Redway | Reeder | REGAL | RelNAT | Relndoo Remdun | Renova | RENSO | rephone | Retroid Pocket | Revo | Revomovil Rhino | Ricoh | Rikomagic | RIM | Ringing Bells | Rinno | Ritmix Ritzviva | Riviera | Rivo | Rizzen | ROADMAX | Roadrover | Roam Cat ROCH | Rocket | ROiK | Rokit | Roku | Rombica | Romsat Ross&Moor | Rover | RoverPad | Royole | RoyQueen | RT Project | RTK RugGear | RuggeTech | Ruggex | Ruio | Runbo | RunGee | Rupa Ryte | S-Color | S-TELL | S2Tel | Saba | Safaricom | Sagem Sagemcom | Saiet | SAILF | Salora | Sambox | Samsung | Samtech Samtron | Sanei | Sankey | Sansui | Santin | SANY | Sanyo Savio | Sber | SCHAUB LORENZ | Schneider | Schok | SCHONTECH | Scoole Scosmos | Seatel | SEBBE | Seeken | SEEWO | SEG | Sega SEHMAX | Selecline | Selenga | Selevision | Selfix | SEMP TCL | Sencor Sencrom | Sendo | Senkatel | SENNA | Senseit | Senwa | SERVO Seuic | Sewoo | SFR | SGIN | Shanling | Sharp | Shift Phones Shivaki | Shtrikh-M | Shuttle | Sico | Siemens | Sigma | Silelis Silent Circle | Silva Schneider | Simbans | simfer | Simply | SINGER | Singtech Siragon | Sirin Labs | Siswoo | SK Broadband | SKG | SKK Mobile | Sky Skyline | SkyStream | Skytech | Skyworth | Smadl | Smailo | Smart Smart Electronic | Smart Kassel | Smart Tech | Smartab | SmartBook | SMARTEC | Smartex Smartfren | Smartisan | Smarty | Smooth Mobile | Smotreshka | SMT Telecom | SMUX SNAMI | SobieTech | Soda | Softbank | Soho Style | Solas | SOLE SOLO | Solone | Sonim | SONOS | Sony | Sony Ericsson | SOSH SoulLink | Soundmax | SOWLY | Soyes | Spark | Sparx | SPC Spectralink | Spectrum | Spice | Spider | Sprint | SPURT | SQOOL SSKY | Star | Star-Light | Starlight | Starmobile | Starway | Starwind STF Mobile | STG Telecom | Stilevs | STK | Stonex | Storex | StrawBerry Stream | STRONG | Stylo | Subor | Sugar | SULPICE TV | Sumvision Sunmax | Sunmi | Sunny | Sunstech | SunVan | Sunvell | SUNWIND Super General | SuperBOX | Supermax | SuperSonic | SuperTab | SuperTV | Supra Supraim | Surfans | Surge | Suzuki | Sveon | Swipe | SWISSMOBILITY Swisstone | Switel | SWOFY | Syco | SYH | Sylvania | Symphony Syrox | System76 | T-Mobile | T96 | TADAAM | TAG Tech | Taiga System Takara | TALBERG | Talius | Tambo | Tanix | TAUBE | TB Touch TCL | TCL SCBC | TD Systems | TD Tech | TeachTouch | Technicolor | Technika TechniSat | Technopc | TECHNOSAT | TechnoTrend | TechPad | TechSmart | Techstorm Techwood | Teclast | Tecno Mobile | TecToy | TEENO | Teknosa | Tele2 Telefunken | Telego | Telenor | Telia | Telit | Telkom | Telly Telma | TeloSystems | Telpo | Temigereev | TENPLUS | Teracube | Tesco Tesla | TETC | Tetratab | teXet | ThL | Thomson | Thuraya TIANYU | Tibuta | Tigers | Time2 | Timovi | TIMvision | Tinai Tinmo | TiPhone | Tivax | TiVo | TJC | TJD | TOKYO Tolino | Tone | TOOGO | Tooky | Top House | Top-Tech | TopDevice TOPDON | Topelotek | Toplux | TOPSHOWS | Topsion | Topway | Torex TORNADO | Torque | TOSCIDO | Toshiba | Touch Plus | Touchmate | TOX TPS | Transpeed | Trecfone | TrekStor | Trevi | TriaPlay | Tricolor Trident | Trifone | Trimble | Trio | Tronsmart | True | True Slim Tsinghua Tongfang | TTEC | TTfone | TTK-TV | TuCEL | TUCSON | Tunisie Telecom Turbo | Turbo-X | TurboKids | TurboPad | Türk Telekom | Turkcell | Türksat Tuvio | TV+ | TVC | TwinMOS | TWM | Twoe | TWZ TYD | Tymes | U-Magic | U.S. Cellular | UD | UE | UGINE Ugoos | Uhans | Uhappy | Ulefone | Umax | UMIDIGI | Umiio Unblock Tech | Uniden | Unihertz | Unimax | Uniqcell | Uniscope | Unistrong Unitech | UNITED | United Group | UNIWA | Unknown | Unnecto | Unnion Technologies UNNO | Unonu | UnoPhone | Unowhy | UOOGOU | Urovo | UTime UTOK | UTStarcom | UZ Mobile | V-Gen | V-HOME | V-HOPE | v-mobile V7 | VAIO | VALE | VALEM | VALTECH | VANGUARD | Vankyo VANWIN | Vargo | VASOUN | Vastking | VAVA | VC | VDVD Vega | Veidoo | Vekta | Venso | Venstar | Venturer | VEON Verico | Verizon | Vernee | Verssed | Versus | Vertex | Vertu Verykool | Vesta | Vestel | VETAS | Vexia | VGO TEL | ViBox Victurio | VIDA | Videocon | Videoweb | Viendo | ViewSonic | VIIPOO VIKUSHA | VILLAON | VIMOQ | Vinabox | Vinga | Vinsoc | Vios Viper | Vipro | Virzo | Vision Technology | Vision Touch | Visitech | Visual Land Vitelcom | Vitumi | Vityaz | Viumee | Vivax | VIVIBright | VIVIMAGE Vivo | VIWA | Vizio | Vizmo | VK Mobile | VKworld | VNPT Technology VOCAL | Vodacom | Vodafone | VOGA | VOIX | Völfen | VOLIA VOLKANO | Volla | Volt | Vonino | Vontar | Vorago | Vorcom Vorke | Vormor | Vortex | VORTEX (RO) | Voto | VOX | Voxtel Voyo | Vsmart | Vsun | VUCATIMES | Vue Micro | Vulcan | VVETIME W&O | WAF | Wainyok | waipu.tv | Walker | Waltham | Walton Waltter | Wanmukang | WANSA | WE | We. by Loewe. | Web TV | Webfleet WeChip | Wecool | Weelikeit | Weiimi | Weimei | WellcoM | WELLINGTON Western Digital | Weston | Westpoint | Wexler | White Mobile | Whoop | Wieppo Wigor | Wiko | WildRed | Wileyfox | Winds | Wink | Winmax Winnovo | Winstar | Wintouch | Wiseasy | WIWA | WizarPos | Wizz Wolder | Wolfgang | Wolki | WONDER | Wonu | Woo | Wortmann Woxter | WOZIFAN | WS | X-AGE | X-BO | X-Mobile | X-TIGI X-View | X.Vision | X88 | X96 | X96Q | XB | Xcell XCOM | Xcruiser | XElectron | XGEM | XGIMI | Xgody | Xiaodu Xiaolajiao | Xiaomi | Xion | Xolo | Xoro | XPPen | XREAL Xshitou | Xsmart | Xtouch | Xtratech | Xwave | XY Auto | Yandex Yarvik | YASIN | YELLYOUTH | YEPEN | Yes | Yestel | Yezz YIKEMI | Yoka TV | Yooz | Yota | YOTOPT | Youin | Youwei Ytone | Yu | YU Fly | Yuandao | YUHO | YUMKEM | YUNDOO Yuno | YunSong | Yusun | Yxtel | Z-Kai | Zaith | ZALA Zamolxe | Zatec | Zealot | Zeblaze | Zebra | Zeeker | Zeemi Zen | Zenek | Zentality | Zfiner | ZH&K | Zidoo | ZIFFLER ZIFRO | Zigo | ZIK | Zinox | ZIOVO | Ziox | Zonda Zonko | Zoom | ZoomSmart | Zopo | ZTE | Zuum | Zync ZYQ | Zyrex | ZZB

[top]

| type | id | | ---- | ---- | | desktop | 0 | | smartphone | 1 | | tablet | 2 | | feature phone | 3 | | console | 4 | | tv | 5 | | car browser | 6 | | smart display | 7 | | camera | 8 | | portable media player | 9 | | phablet | 10 | | smart speaker | 11 | | wearable | 12 | | peripheral | 13 |

Support detect browsers list (684):

Browser | Browser | Browser | Browser | Browser | Browser | Browser --- | --- | --- | --- | --- | --- | --- 115 Browser | 18+ Privacy Browser | 1DM Browser | 1DM+ Browser | 2345 Browser | 360 Phone Browser | 360 Secure Browser 7654 Browser | 7Star | ABrowse | Acoo Browser | AdBlock Browser | Adult Browser | Ai Browser Airfind Secure Browser | Aloha Browser | Aloha Browser Lite | AltiBrowser | ALVA | Amaya | Amaze Browser Amerigo | Amiga Aweb | Amiga Voyager | Amigo | Android Browser | Anka Browser | ANT Fresco ANTGalio | AOL Desktop | AOL Explorer | AOL Shield | AOL Shield Pro | Aplix | APN Browser AppBrowzer | AppTec Secure Browser | APUS Browser | Arachne | Arc Search | Arctic Fox | Armorfly Browser Arora | Arvin | Ask.com | Asus Browser | Atlas | Atom | Atomic Web Browser Avant Browser | Avast Secure Browser | AVG Secure Browser | Avira Secure Browser | Awesomium | AwoX | Azka Browser B-Line | Baidu Browser | Baidu Spark | Bang | Bangla Browser | Basic Web Browser | Basilisk Beaker Browser | Beamrise | Belva Browser | Beonex | Berry Browser | Beyond Private Browser | BF Browser Bitchute Browser | Biyubi | BizBrowser | Black Lion Browser | BlackBerry Browser | BlackHawk | Bloket Blue Browser | Bluefy | Bonsai | Borealis Navigator | Brave | BriskBard | BroKeep Browser Browlser | BrowsBit | BrowseHere | Browser Hup Pro | Browser Mini | BrowseX | Browspeed Browser Browzar | Bunjalloo | BXE Browser | Byffox | Cake Browser | Camino | Catalyst Catsxp | Cave Browser | CCleaner | Centaury | CG Browser | ChanjetCloud | Charon ChatGPT Atlas | Chedot | Cheetah Browser | Cherry Browser | Cheshire | Chim Lac | Chowbo Chrome | Chrome Frame | Chrome Mobile | Chrome Mobile iOS | Chrome Webview | ChromePlus | Chromium Chromium GOST | Classilla | Cliqz | Cloak Private Browser | CM Browser | CM Mini | Coast Coc Coc | Colibri | Colom Browser | Columbus Browser | CometBird | Comfort Browser | Comodo Dragon Conkeror | CoolBrowser | CoolNovo | Cornowser | COS Browser | Craving Explorer | Crazy Browser Cromite | Crow Browser | Crusta | Cunaguaro | Cyberfox | CyBrowser | Dark Browser Dark Web | Dark Web Browser | Dark Web Private | dbrowser | Debuggable Browser | Decentr | Deepnet Explorer deg-degan | Deledao | Delta Browser | Desi Browser | DeskBrowse | Dezor | Diigo Browser Dillo | DoCoMo | Dolphin | Dolphin Zero | Dooble | Dorado | Dot Browser Dragon Browser | DUC Browser | DuckDuckGo Privacy Browser | East Browser | Easy Browser | Ecosia | Edge WebView EinkBro | Element Browser | Elements Browser | Elinks | Eolie | Epic | Espial TV Browser EudoraWeb | EUI Browser | Every Browser | Explore Browser | eZ Browser | Falkon | Fast Browser UC Lite Fast Explorer | Faux Browser | Fennec | fGet | Fiery Browser | Fire Browser | Firebird Firefox | Firefox Focus | Firefox Klar | Firefox Mobile | Firefox Mobile iOS | Firefox Reality | Firefox Rocket Fireweb | Fireweb Navigator | Flash Browser | Flast | Float Browser | Flock | Floorp Flow | Flow Browser | Fluid | Flyperlink | FOSS Browser | Freedom Browser | FreeU Frost | Frost+ | Fulldive | G Browser | Galeon | Gener8 | Ghostery Privacy Browser GinxDroid Browser | Glass Browser | GNOME Web | GO Browser | GoBrowser | Godzilla Browser | GOG Galaxy GoKu | Good Browser | Google Earth | Google Earth Pro | GreenBrowser | Habit Browser | Halo Browser Harman Browser | Harmony 360 Browser | HasBrowser | Hawk Quick Browser | Hawk Turbo Browser | Headless Chrome | Helio Herond Browser | Hexa Web Browser | HeyTapBrowser | Hi Browser | hola! Browser | Holla Web Browser | HONOR Browser HotBrowser | HotJava | HTC Browser | Huawei Browser | Huawei Browser Mobile | HUB Browser | IBrowse iBrowser | iBrowser Mini | iCab | iCab Mobile | IceCat | IceDragon | Iceweasel iDesktop PC Browser | IE Browser Fast | IE Mobile | Impervious Browser | InBrowser | Incognito Browser | Indian UC Mini Browser iNet Browser | Inspect Browser | Insta Browser | Internet Browser Secure | Internet Explorer | Internet Webbrowser | Intune Managed Browser Involta Go | Iridium | Iron | Iron Mobile | Isivioo | IVVI Browser | Japan Browser Jasmine | JavaFX | Jelly | Jig Browser | Jig Browser Plus | JioSphere | JUZI Browser K-meleon | K-Ninja | K.Browser | Kapiko | Kazehakase | Keepsafe Browser | KeepSolid Browser Keyboard Browser | Kids Safe Browser | Kindle Browser | Kinza | Kitt | Kiwi | Kode Browser Konqueror | KUN | KUTO Mini Browser | Kylo | Ladybird | Lagatos Browser | Lark Browser Legan Browser | Lenovo Browser | Lexi Browser | LG Browser | LieBaoFast | Light | Lightning Browser Lightning Browser Plus | Lilo | Links | Liri Browser | LogicUI TV Browser | Lolifox | Lotus Lovense Browser | LT Browser | LuaKit | LUJO TV Browser | Lulumi | Lunascape | Lunascape Lite Lynket Browser | Lynx | Maelstrom | Mandarin | Maple | MarsLab Web Browser | MAUI WAP Browser MaxBrowser | Maxthon | MaxTube Browser | mCent | Me Browser | Meizu Browser | Mercury Mi Browser | MicroB | Microsoft Edge | Midori | Midori Lite | Minimo | Mint Browser Mises | MixerBox AI | MMBOX XBrowser | Mmx Browser | Mobicip | Mobile Safari | Mobile Silk Mogok Browser | Monument Browser | Motorola Internet Browser | MxNitro | Mypal | Naenara Browser | Naked Browser Naked Browser Pro | Navigateur Web | NCSA Mosaic | NetFront | NetFront Life | NetPositive | Netscape NetSurf | NextWord Browser | NFS Browser | Ninesky | Ninetails | Nokia Browser | Nokia OSS Browser Nokia Ovi Browser | NOMone VR Browser | NOOK Browser | Norton Private Browser | Nova Video Downloader Pro | Nox Browser | NTENT Browser Nuanti Meta | Nuviu | Obigo | Ocean Browser | OceanHero | Oculus Browser | Odd Browser Odin | Odin Browser | Odyssey Web Browser | Off By One | Office Browser | OH Browser | OH Private Browser OhHai Browser | OJR Browser | OmniWeb | OnBrowser Lite | ONE Browser | Onion Browser | ONIONBrowser Open Browser | Open Browser 4U | Open Browser fast 5G | Open Browser Lite | Open TV Browser | OpenFin | Openwave Mobile Browser Opera | Opera Crypto | Opera Devices | Opera GX | Opera Mini | Opera Mini iOS | Opera Mobile Opera Neon | Opera Next | Opera Touch | Oppo Browser | Opus Browser | Orbitum | Orca Ordissimo | Oregano | Origin In-Game Overlay | Origyn Web Browser | OrNET Browser | Otter Browser | Owl Browser Pale Moon | Palm Blazer | Palm Pre | Palm WebPro | Palmscape | Pawxy | Peach Browser Peeps dBrowser | Perfect Browser | Perk | Phantom Browser | Phantom.me | Phoenix | Phoenix Browser Photon | Pi Browser | PICO Browser | Pintar Browser | PirateBrowser | PlayFree Browser | Pluma Pocket Internet Explorer | PocketBook Browser | Polaris | Polarity | PolyBrowser | Polypane | Presearch Prism | Privacy Browser | Privacy Explorer Fast Safe | PrivacyWall | Private Internet Browser | PronHub Browser | Proxy Browser ProxyFox | Proxyium | ProxyMax | Proxynet | PSI Secure Browser | Puffin Cloud Browser | Puffin Incognito Browser Puffin Secure Browser | Puffin Web Browser | Pure Lite Browser | Pure Mini Browser | Qazweb | Qiyu | QJY TV Browser Qmamu | QQ Browser | QQ Browser Lite | QQ Browser Mini | QtWeb | QtWebEngine | Quark QuarkPC | Quetta | Quick Browser | Quick Search TV | QupZilla | Qutebrowser | Qwant Mobile Rabbit Private Browser | Raise Fast Browser | Rakuten Browser | Rakuten Web Search | Raspbian Chromium | RCA Tor Explorer | Realme Browser Rekonq | Reqwireless WebViewer | Roccat | RockMelt | Roku Browser | Safari | Safari Technology Preview Safe Exam Browser | Sailfish Browser | SalamWeb | Samsung Browser | Samsung Browser Lite | Savannah Browser | SavySoda SberBrowser | Secure Browser | Secure Private Browser | SecureX | Seewo Browser | SEMC-Browser | Seraphic Sraf Seznam Browser | SFive | Sharkee Browser | Shiira | Sidekick | SilverMob US | SimpleBrowser Singlebox | SiteKiosk | Sizzy | Skye | Skyfire | SkyLeap | Sleipnir SlimBoat | Slimjet | Smart Browser | Smart Lenovo Browser | Smart Search & Web Browser | Smooz | Snowshoe Sogou Explorer | Sogou Mobile Browser | Sony Small Browser | SOTI Surf | Soul Browser | Soundy Browser | SP Browser Spark | Spectre Browser | Splash | Sputnik Browser | Stampy Browser | Stargon | START Internet Browser Stealth Browser | Steam In-Game Overlay | Streamy | Sunflower Browser | Sunrise | Super Fast Browser | SuperBird SuperFast Browser | surf | Surf Browser | Surfy Browser | Sushi Browser | Sweet Browser | Swiftfox Swiftweasel | SX Browser | T-Browser | t-online.de Browser | T+Browser | TalkTo | Tao Browser tararia | TenFourFox | Tenta Browser | Tesla Browser | Thor | Tint Browser | Tizen Browser ToGate | Tor Browser | Total Browser | TQ Browser | TrueLocation Browser | TUC Mini Browser | Tungsten TUSK | TV Bro | TV-Browser Internet | TweakStyle | U Browser | UBrowser | UC Browser UC Browser HD | UC Browser Mini | UC Browser Turbo | Ui Browser Mini | Ume Browser | UPhone Browser | UR Browser Uzbl | Vast Browser | vBrowser | VD Browser | Veera | Vegas Browser | Venus Browser Vertex Surf | Vewd Browser | Via | Viasat Browser | VibeMate | Vision Mobile Browser | Vivaldi Vivid Browser Mini | vivo Browser | VMS Mosaic | VMware AirWatch | Vonkeror | Vuhuv | w3m Waterfox | Wave Browser | Wavebox | Wear Internet Browser | Web Browser & Explorer | Web Explorer | WebDiscover Webian Shell | WebPositive | Weltweitimnetz Browser | WeTab Browser | Wexond | Whale Browser | Whale TV Browser Wolvic | World Browser | wOSBrowser | Wukong Browser | Wyzo | X Browser Lite | X-VPN xBrowser | XBrowser Mini | xBrowser Pro Super Fast | Xiino | XnBrowse | XNX Browser | Xooloo Internet xStand | XtremeCast | Xvast | Yaani Browser | YAGI | Yahoo! Japan Browser | Yandex Browser Yandex Browser Corp | Yandex Browser Lite | Yo Browser | Yolo Browser | YouBrowser | YouCare | Yuzu Browser Zetakey | Zirco Browser | Zordo Browser | ZTE Browser | Zvu

[top]