{"id":22974910,"url":"https://github.com/sanchezzzhak/node-device-detector","last_synced_at":"2025-05-15T14:08:13.263Z","repository":{"id":38631653,"uuid":"65157034","full_name":"sanchezzzhak/node-device-detector","owner":"sanchezzzhak","description":"Universal library for detecting devices based on the string `UserAgent`. We can identify: App, Bot, OS, Browser, Device brand, Device model and Device type (smartphone, phablet, tablet, desktop, TV and other types, total 13)","archived":false,"fork":false,"pushed_at":"2025-05-12T06:13:11.000Z","size":21974,"stargazers_count":159,"open_issues_count":1,"forks_count":22,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-12T07:23:55.373Z","etag":null,"topics":["browser-detection","device-detector","mobile-detection","os-detection","user-agent"],"latest_commit_sha":null,"homepage":"https://codesandbox.io/p/devbox/demo-node-device-detect-forked-mwfx8e","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sanchezzzhak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-08-07T22:34:48.000Z","updated_at":"2025-05-12T06:13:13.000Z","dependencies_parsed_at":"2023-09-23T04:00:05.400Z","dependency_job_id":"79f87377-efae-42c6-aac1-df38432b907d","html_url":"https://github.com/sanchezzzhak/node-device-detector","commit_stats":{"total_commits":631,"total_committers":11,"mean_commits":57.36363636363637,"dds":"0.24247226624405704","last_synced_commit":"73a569362b04ab696cb47dfaa5d012216667465b"},"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanchezzzhak%2Fnode-device-detector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanchezzzhak%2Fnode-device-detector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanchezzzhak%2Fnode-device-detector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanchezzzhak%2Fnode-device-detector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sanchezzzhak","download_url":"https://codeload.github.com/sanchezzzhak/node-device-detector/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254355335,"owners_count":22057354,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser-detection","device-detector","mobile-detection","os-detection","user-agent"],"created_at":"2024-12-15T00:11:00.316Z","updated_at":"2025-05-15T14:08:13.244Z","avatar_url":"https://github.com/sanchezzzhak.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# [node-device-detector](https://www.npmjs.com/package/node-device-detector)\n\n_Last update: 29/04/2025_\n\n## Description\n\nPort php lib [matomo-org/device-detector](https://github.com/matomo-org/device-detector) to NodeJs\n\n* [Online demo](https://mwfx8e.sse.codesandbox.io/)\n\n## Code Status \u003ca name=\"top\"\u003e\u003c/a\u003e\n\n![Chai](https://github.com/sanchezzzhak/node-device-detector/workflows/Tests/badge.svg)\n![YAML Lint](https://github.com/sanchezzzhak/node-device-detector/workflows/YAML%20Lint/badge.svg)\n![Prettier](https://github.com/sanchezzzhak/node-device-detector/workflows/Prettier/badge.svg)\n![CodeQL](https://github.com/sanchezzzhak/node-device-detector/workflows/CodeQL/badge.svg)\n## Contents\n\n+ [Helpers](#helpers)\n+ [Single parsers](#single-parsers)\n+ [Settings](#options)\n+ [Specific methods](#specific-methods)\n+ [Examples](#others)\n+ [Support brands](#brands-list)\n+ [Support device types](#device-types)\n+ [Support browsers](#browsers-list)\n\nInstall\n-\n```\nnpm install node-device-detector --save\n```\nor \n```\nyarn add node-device-detector\n```\nUsage\n-\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\n\nconst detector = new DeviceDetector({\n  clientIndexes: true,\n  deviceIndexes: true,\n  deviceAliasCode: false,\n  deviceTrusted: false,\n  deviceInfo: false,\n  maxUserAgentSize: 500,\n});\nconst 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';\nconst result = detector.detect(userAgent);\nconsole.log('result parse', result);\n```\n\n### Result parse\n\n```text\n{ \n  os: { \n    name: 'Android',           // os name       \n    short_name: 'AND',         // os short code name (format A-Z0-9{3})\n    version: '5.0',            // os version\n    platform: '',              // os platform (x64, x32, amd etc.)\n    family: 'Android'          // os family\n  },\n  client:  { \n    type: 'browser',            // client type \n    name: 'Chrome Mobile',      // client name name\n    short_name: 'CM',           // client short code name (only browser, format A-Z0-9{2,3})\n    version: '43.0.2357.78',    // client version\n    engine: 'Blink',            // client engine name (only browser)\n    engine_version: ''          // client engine version (only browser)\n    family: 'Chrome'            // client family (only browser)\n  },\n  device: { \n    id: 'ZT',                   // short code device brand name (format A-Z0-9{2,3})\n    type: 'smartphone',         // device type\n    brand: 'ZTE',               // device brand name\n    model: 'Nubia Z7 max'       // device model name\n    code: 'NX505J'              // device model code  (only result for enable detector.deviceAliasCode) \n    trusted: true               // device trusted (result only for enable detector.deviceTrusted and have fixture data + ClientHints are required)\n    info: {}                    // device specs (result only fir enable detector.deviceInfo)\n  }\n}\n```\n\nResult parse empty\n```text\n{ \n  os: {},                      // empty objects its os not found\n  client: {},                  // empty objects its client not found\n  device: {      \n    id: '',                    // empty string its device brand not found\n    type : 'device type',      // device type or empty string\n    brand: '',                 // empty string its device brand not found\n    model: ''                  // empty string its device model not found\n  }\n}\n```\n\n### Helpers\u003ca name=\"helpers\"\u003e\u003c/a\u003e ###\n[[top]](#top)\n\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\nconst DeviceHelper = require('node-device-detector/helper');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\nimport DeviceHelper from \"node-device-detector/helper\";\n\nconst detector = new DeviceDetector();\nconst 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';\nconst result = detector.detect(userAgent);\n\n/* check device type (feature phone, smartphone or phablet) */\nDeviceHelper.isMobile(result);\n/* check device type is desktop */\nDeviceHelper.isDesktop(result);\n/* check device type is tablet  */\nDeviceHelper.isTablet(result);\n/* check device type car (side panel in car)  */\nDeviceHelper.isCar(result);\n/* check device type feature phone (push-button telephones)  */\nDeviceHelper.isFeaturePhone(result);\n/* check device type smartphone  */\nDeviceHelper.isSmartphone(result);\n/* check device type phablet  */\nDeviceHelper.isPhablet(result);\n/* check device type game console (xBox, PlayStation, Nintendo etc)  */\nDeviceHelper.isConsole(result);\n/* check device type smart speaker (Alisa, Alexa, HomePod etc) */\nDeviceHelper.isSmartSpeaker(result);\n/* check device type SmartTV/TV box */\nDeviceHelper.isTv(result);\n/* check device type portable camera */\nDeviceHelper.isCamera(result);\n/* portable terminal, portable projector */\nDeviceHelper.isPeripheral(result);\n/* LCD panel or interactive panel  */\nDeviceHelper.isSmartDisplay(result);\n/* check device type boxes, blu-ray players */\nDeviceHelper.isPortableMediaPlayer(result);\n/* check device type watches, headsets */\nDeviceHelper.isWearable(result);\n/* result device type number id */\nDeviceHelper.getDeviceTypeId(result);\n/* result device type string */\nDeviceHelper.getDeviceType(result);\n/* result client type string */\nDeviceHelper.getClientType(result);\n```\n\nUsing DeviceDetector + ClientHints\n-\n[[top]](#top)\n\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\nconst DeviceHelper   = require('node-device-detector/helper');\nconst ClientHints    = require('node-device-detector/client-hints');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\nimport DeviceHelper from \"node-device-detector/helper\";\nimport ClientHints from \"node-device-detector/client-hints\";\n\nconst detector = new DeviceDetector({\n  clientIndexes: true,\n  deviceIndexes: true,\n  deviceAliasCode: false,\n  deviceTrusted: false,\n  deviceInfo: false,\n  // ... all options scroll to Setter/Getter/Options\n});\n\n/** server side use celint hinsts */\nconst clientHints = new ClientHints();\nconst userAgent = res.headers['user-agent'];\nlet headers = res.headers;\nlet meta = {}\n/**\n option meta interface (needed to detect whether the device is trusted,\n this information can be obtained from browser)\n {\n   width: '720',             //  Math.ceil(window.screen.width)\n   height: '1440',           //  Math.ceil(window.screen.height)\n   gpu: 'PowerVR SGX Doma',  //  (()=\u003e{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})();\n }\n More details in file docs/CLIENT_HINTS_BROWSER.MD\n */\nlet hints = clientHints.parse(headers /* or body.hints */, meta /* or body.meta */);\nconst result = detector.detect(userAgent, hints);\n\n// result promise\n// added for 2.0.4 version or later\nconst result = detector.detectAsync(userAgent, hints);\n```\n\nUsing parsers singly \u003ca name=\"single-parsers\"\u003e\u003c/a\u003e\n-\n[[top]](#top)\n\n#### Detect Bot\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\n\nconst 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)';\nconst detector = new DeviceDetector();\nconst result = detector.parseBot(userAgent);\n```\n\n#### Detect Os\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\n\nconst 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';\nconst detector = new DeviceDetector({\n  clientIndexes: true,\n  deviceIndexes: true,\n  deviceAliasCode: false,\n});\nconst result = detector.parseOs(userAgent/*, clientHintData*/);\nconsole.log('Result parse os', result);  \n```\n\n#### Detect Client \n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\n\nconst 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';\nconst detector = new DeviceDetector({\n    clientIndexes: true,\n    deviceIndexes: true,\n    deviceAliasCode: false,\n});\nconst result = detector.parseClient(userAgent/*, clientHintData*/);\nconsole.log('Result parse client', result);\n```\n\n#### Lite parse not detect brand\n```js\n// commonJS\nconst DeviceDetector = require('node-device-detector');\n// or ESModule\nimport DeviceDetector from \"node-device-detector\";\n\nconst 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';\nconst detector = new DeviceDetector({\n  clientIndexes: true,\n  deviceIndexes: true,\n  deviceAliasCode: false,\n});\nconst resultOs = detector.parseOs(userAgent);\nconst resultClient = detector.parseClient(userAgent);\nconst resultDeviceType = detector.parseDeviceType(\n userAgent,\n resultOs,\n resultClient,\n {},\n /*, clientHintData */\n);\nconst result = Object.assign({os:resultOs}, {client:resultClient}, {device: resultDeviceType});\nconsole.log('Result parse lite', result);\n```\n\n### Getter/Setter/Options \u003ca name=\"options\"\u003e\u003c/a\u003e ###\n[[top]](#top)\n```js\nconst detector = new DeviceDetector({\n  osVersionTruncate: 0,      // Truncate OS version from 5.0 to 5 (default '' or null)\n  clientVersionTruncate: 2,  // Truncate Client version Chrome from 43.0.2357.78 to 43.0.2357 (default '' or null)\n  deviceIndexes: true,       // Using indexes for faster device search (default false)\n  clientIndexes: true,       // Using indexes for faster client search (default false)\n  deviceAliasCode: true,     // adds device code to result [device.code] as is (default false)\n  maxUserAgentSize: 500,     // uses only 500 chars from useragent string (default null - unlimited)\n  deviceTrusted: true,       // check device by specification (default false)\n  deviceInfo: true,          // adds device specification to result [device.info] (default false)\n});\n\n// You can override these settings at any time using special setters, example\ndetector.osVersionTruncate = 0;\ndetector.clientVersionTruncate = 2;\ndetector.deviceIndexes = true;\ndetector.clientIndexes = true;\ndetector.deviceAliasCode = true;\ndetector.maxUserAgentSize = 500;\ndetector.deviceTrusted = true;\ndetector.deviceInfo = true;\n\n// Array available device types\ndetector.getAvailableDeviceTypes();\n// Array available devices brands\ndetector.getAvailableBrands();\n// Array available browsers\ndetector.getAvailableBrowsers();\n```\n\n### Specific methods \u003ca name=\"specific-methods\"\u003e\u003c/a\u003e ###\n\n```js\nconst DEVICE_PARSER_NAMES = detector.getDeviceParserNames(); // result colection names for device parsers \nconst CLIENT_PARSER_NAMES = detector.getClientParserNames(); // result colection names for client parsers \nconst OS_PARSER_NAMES = detector.getOsParserNames();         // result collection names for os parsers\nconst BOT_PARSER_NAMES = detector.getBotParserNames();       // result collection names for bot parsers   \n\nconst aliasDevice = detector.getParseAliasDevice();          // result AliasDevice parser\nconst deviceInfo = detector.getParseInfoDevice();            // result InfoDevice parser\n\n// added custom parser\ndetector.addParseDevice('MyDeviceParser', new MyDeviceParser());\ndetector.addParseClient('MyClientParser', new MyClientParser());\ndetector.addParseOs('MyOsParser', new MyOsParser());\ndetector.addParseBot('MyBotParser', new MyBotParser());\n// get single parser by name\ndetector.getParseDevice('MyDeviceParser' /* or DEVICE_PARSER_NAMES.MOBILE */);\ndetector.getParseClient('MyClientParser'  /* or CLIENT_PARSER_NAMES.BROWSER */);\ndetector.getParseOs('MyOsParser'/* or OS_PARSER_NAMES.DEFAULT */);\ndetector.getParseBot('MyBotParser');\n```\n\n### Getting device code as it (experimental) \u003ca name=\"device-code\"\u003e\u003c/a\u003e\n[[top]](#top)\n```js\nconst DeviceDetector = require('node-device-detector');\nconst detector = new DeviceDetector()\nconst aliasDevice = detector.getParseAliasDevice();\nconst result = aliasDevice.parse(userAgent);\nconsole.log('Result parse code model', result);\n// or\nconst AliasDevice = require('node-device-detector/parser/device/alias-device');\nconst 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';\nconst aliasDevice = new AliasDevice();\nconst result = aliasDevice.parse(userAgent);\nconsole.log('Result parse code model', result);\n\n/*\nresult \n{\n  name: \"NX505J\"\n}\nis not parse result  {name: \"\"}\n*/\n``` \n\n### What about performance?\n```\nnode tests/banchmark.js test result:\n\nTest 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\n-----\ndetector.parseDevice (deviceIndexes on) x 10,449 ops/sec ±0.27% (93 runs sampled)\ndetector.parseDevice (deviceIndexes off) x 261 ops/sec ±88.58% (92 runs sampled)\ndetector.parseClient (clientIndexes on) x 1,703 ops/sec ±0.36% (92 runs sampled)\ndetector.parseClient (clientIndexes off) x 859 ops/sec ±0.46% (93 runs sampled)\ndetector.parseOS x 10,034 ops/sec ±0.23% (94 runs sampled)\ndetector.detect (indexes off) x 254 ops/sec ±0.46% (85 runs sampled)\ndetector.detect (indexes on) x 1,114 ops/sec ±1.44% (91 runs sampled)\n```\n\u003cdetails\u003e\n\u003csummary\u003eOther tests\u003c/summary\u003e\n\n```\nTest 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\n-----\ndetector.parseDevice (deviceIndexes on) x 5,457 ops/sec ±0.23% (95 runs sampled)\ndetector.parseDevice (deviceIndexes off) x 220 ops/sec ±31.15% (87 runs sampled)\ndetector.parseClient (clientIndexes on) x 5,797 ops/sec ±0.32% (92 runs sampled)\ndetector.parseClient (clientIndexes off) x 6,243 ops/sec ±0.47% (93 runs sampled)\ndetector.parseOS x 7,570 ops/sec ±0.92% (93 runs sampled)\ndetector.detect (indexes off) x 203 ops/sec ±78.87% (86 runs sampled)\ndetector.detect (indexes on) x 1,695 ops/sec ±1.49% (88 runs sampled)\n\nTest 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\n-----\ndetector.parseDevice (deviceIndexes on) x 2,315 ops/sec ±0.62% (94 runs sampled)\ndetector.parseDevice (deviceIndexes off) x 448 ops/sec ±78.47% (89 runs sampled)\ndetector.parseClient (clientIndexes on) x 1,664 ops/sec ±0.69% (92 runs sampled)\ndetector.parseClient (clientIndexes off) x 844 ops/sec ±1.09% (93 runs sampled)\ndetector.parseOS x 10,258 ops/sec ±0.31% (95 runs sampled)\ndetector.detect (indexes off) x 254 ops/sec ±48.42% (89 runs sampled)\ndetector.detect (indexes on) x 808 ops/sec ±0.40% (92 runs sampled)\n-----\nTest 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\n-----\ndetector.parseDevice (deviceIndexes on) x 8,387 ops/sec ±1.21% (94 runs sampled)\ndetector.parseDevice (deviceIndexes off) x 8,645 ops/sec ±0.32% (95 runs sampled)\ndetector.parseClient (clientIndexes on) x 1,751 ops/sec ±1.87% (91 runs sampled)\ndetector.parseClient (clientIndexes off) x 1,227 ops/sec ±0.57% (93 runs sampled)\ndetector.parseOS x 4,921 ops/sec ±0.25% (97 runs sampled)\ndetector.detect (indexes off) x 799 ops/sec ±1.04% (92 runs sampled)\ndetector.detect (indexes on) x 1,032 ops/sec ±0.61% (94 runs sampled)\n-----\n```\n\u003c/details\u003e\n\n### What about tests?\nYes we use tests, total tests: ~83.7k\n\n### Get more information about a device (experimental)\n\u003e This parser is experimental and contains few devices. (1862 devices, alias devices 3923)\n\u003e\n##### Support detail brands/models list:\n\n\u003cdetails\u003e\n\u003csummary\u003eShow details\u003c/summary\u003e\n\n| Brand | Device count | Alias count | - | Brand | Device count | Alias count |\n|----|----|----|----|----|----|----|\n| 360 | 12 | 13 | - | 8848 | 4 | 0 |\n| 2e | 2 | 2 | - | 3gnet | 0 | 1 |\n| 3q | 14 | 62 | - | 4good | 10 | 1 |\n| 4ife | 0 | 1 | - | a1 | 0 | 1 |\n| accent | 0 | 5 | - | ace | 8 | 0 |\n| acer | 5 | 68 | - | acteck | 0 | 0 |\n| advan | 0 | 1 | - | advance | 0 | 14 |\n| afrione | 0 | 2 | - | agm | 4 | 0 |\n| ainol | 2 | 16 | - | airness | 0 | 0 |\n| airo wireless | 1 | 0 | - | airties | 0 | 0 |\n| ais | 0 | 2 | - | aiuto | 0 | 0 |\n| aiwa | 0 | 0 | - | akai | 2 | 5 |\n| alba | 0 | 1 | - | alcatel | 29 | 433 |\n| alcor | 1 | 0 | - | alfawise | 0 | 0 |\n| aligator | 0 | 0 | - | allcall | 0 | 3 |\n| alldocube | 2 | 6 | - | allview | 0 | 46 |\n| allwinner | 0 | 3 | - | altech uec | 0 | 0 |\n| altek | 1 | 0 | - | altice | 0 | 0 |\n| altron | 0 | 1 | - | amazon | 19 | 30 |\n| amgoo | 2 | 15 | - | amigoo | 0 | 0 |\n| amoi | 62 | 2 | - | andowl | 0 | 0 |\n| anry | 0 | 0 | - | ans | 0 | 0 |\n| aoc | 0 | 0 | - | aoson | 0 | 6 |\n| apple | 46 | 44 | - | archos | 89 | 7 |\n| arian space | 4 | 2 | - | ark | 1 | 36 |\n| armphone | 0 | 0 | - | arnova | 0 | 36 |\n| arris | 0 | 0 | - | artel | 0 | 2 |\n| artizlee | 0 | 1 | - | asano | 0 | 1 |\n| asanzo | 1 | 0 | - | ask | 0 | 0 |\n| assistant | 2 | 19 | - | asus | 81 | 230 |\n| at\u0026t | 1 | 2 | - | atom | 0 | 3 |\n| atvio | 0 | 0 | - | avenzo | 1 | 3 |\n| avh | 1 | 0 | - | avvio | 3 | 2 |\n| axxion | 0 | 0 | - | azumi mobile | 0 | 1 |\n| bangolufsen | 0 | 0 | - | barnes \u0026 noble | 1 | 6 |\n| bb mobile | 2 | 10 | - | beeline | 11 | 1 |\n| bellphone | 1 | 1 | - | benq | 0 | 1 |\n| beyond | 0 | 7 | - | bezkam | 1 | 0 |\n| bigben | 1 | 0 | - | bihee | 2 | 1 |\n| billion | 1 | 1 | - | bird | 1 | 0 |\n| bitel | 4 | 1 | - | bitmore | 2 | 1 |\n| bkav | 1 | 0 | - | black bear | 2 | 0 |\n| black fox | 18 | 12 | - | blackview | 16 | 9 |\n| blu | 13 | 15 | - | bravis | 24 | 17 |\n| cgv | 1 | 0 | - | clarmin | 3 | 0 |\n| colors | 7 | 2 | - | cyrus | 1 | 0 |\n| digifors | 1 | 1 | - | engel | 1 | 1 |\n| firefly mobile | 4 | 1 | - | formuler | 2 | 0 |\n| geotel | 3 | 0 | - | gionee | 4 | 0 |\n| google | 3 | 5 | - | hisense | 2 | 0 |\n| hoffmann | 1 | 1 | - | hotwav | 18 | 1 |\n| huawei | 226 | 586 | - | i-mobile | 1 | 0 |\n| imo mobile | 5 | 0 | - | infinix | 26 | 40 |\n| inoi | 4 | 0 | - | intex | 18 | 3 |\n| ipro | 6 | 7 | - | irbis | 15 | 0 |\n| kiowa | 1 | 0 | - | kurio | 3 | 3 |\n| lava | 1 | 1 | - | lg | 127 | 286 |\n| malata | 1 | 0 | - | maze | 4 | 0 |\n| minix | 1 | 1 | - | mivo | 3 | 2 |\n| mobicel | 3 | 1 | - | motorola | 28 | 26 |\n| noa | 1 | 0 | - | nomi | 1 | 1 |\n| nuu mobile | 9 | 3 | - | nuvo | 3 | 2 |\n| oneplus | 18 | 48 | - | oppo | 115 | 215 |\n| oukitel | 8 | 0 | - | öwn | 1 | 2 |\n| panasonic | 5 | 8 | - | pipo | 5 | 0 |\n| poco | 9 | 15 | - | realme | 67 | 96 |\n| samsung | 170 | 718 | - | sony | 44 | 172 |\n| supra | 1 | 0 | - | tecno mobile | 91 | 131 |\n| tiphone | 1 | 0 | - | ulefone | 8 | 0 |\n| utok | 1 | 0 | - | uz mobile | 1 | 0 |\n| vernee | 9 | 2 | - | vivo | 205 | 297 |\n| walton | 13 | 0 | - | we | 8 | 0 |\n| weimei | 1 | 0 | - | wiko | 7 | 12 |\n| wileyfox | 9 | 0 | - | wink | 4 | 0 |\n| xiaomi | 9 | 8 | - | zync | 2 | 0 |\n| zyq | 1 | 13 | - |  |  |  |\n\n\u003c/details\u003e\n\n```js\nconst DeviceDetector = require('node-device-detector');\nconst detector = new DeviceDetector();\nconst infoDevice = detector.getParseInfoDevice();\nconst result = infoDevice.info('Asus', 'Zenfone 4');\nconsole.log('Result information', result);\n// or \nconst InfoDevice = require('node-device-detector/parser/device/info-device');\nconst infoDevice = new InfoDevice();\nconst result = infoDevice.info('Asus', 'Zenfone 4');\nconsole.log('Result information', result);\n\n/*\nresult\n{\n  display: {\n    size: '5.5',\n    resolution: '1080x1920',  // width+height\n    ratio: '16:9',\n    ppi: \"401\"\n  },\n  size: '155.4x75.2x7.7',    // width+height+thickness\n  weight: '165',\n  hardware: {\n    // ...\n  }\n  os: \"Android 7.1\",\n  release: \"2017.08\",\n  sim\": \"2\",\n}\nis not found result null\n*/\n```\nCast methods\n```js\nconst InfoDevice = require('node-device-detector/parser/device/info-device');\nconst infoDevice = new InfoDevice;\ninfoDevice.setSizeConvertObject(true);\ninfoDevice.setResolutionConvertObject(true);\nconst result = infoDevice.info('Asus', 'Zenfone 4');\nconsole.log('Result information', result);\n/*\nresult\n{  \n  display: {\n    size: \"5.5\",  // value in inchs\n    resolution: {\n      width: \"1080\", // value in px\n      height: \"1920\" // value in px\n    },\n    ratio: \"16:9\",   // calculated field\n    ppi: \"401\"       // calculated field\n  },\n  hardware: {\n    ram: \"4096\",   // RAM value in megabytes\n    cpu_id: 19,  // id cpu model in collection\n    cpu: {\n      name: \"Qualcomm Snapdragon 630\",  // brand + name\n      type: \"ARM\",                      // architecture type \n      cores: \"8\",                       // number of cores / threads \n      clock_rate: 2200,                 // value in MHz\n      gpu_id: 16                        // id gpu model in collection\n\t},\n    gpu: {\n      name: \"Qualcomm Adreno 508\",\n      clock_rate: 650\n    }\n  },\n  os: \"Android 7.1\",   // initial OS version\n  release: \"2017.08\",  // date release or anonce\n  sim\": \"2\",           // count SIM \n  size: {           \n    width: \"75.2\",     // physical width in millimeters\n    height: \"155.4\",   // physical height in millimeters\n    thickness: \"7.7\"   // physical thickness in millimeters\n  },\n  weight: \"165\"        // in grams\n};\n*/\n```\n\nOthers \u003ca name=\"others\"\u003e\u003c/a\u003e\n-\n[[top]](#top)\n\n##### Examples\n* [detect device in native server](docs/NATIVE_SERVER.MD)\n* [detect device + client hints in native server](docs/CLIENT_HINT_NATIVE_SERVER.MD)\n* [detect device in express.js](docs/EXPRESS_SERVER.MD)\n* [detect device in moleculer.js](docs/MICROSERVICE.MD)\n* [detect device in uws.js](docs/UWS_SERVER.MD)\n* [detect device in typescript](docs/TYPE_SCRIPT.MD)\n* [get client hints in browser](docs/CLIENT_HINTS_BROWSER.MD)\n\n\u003ca name=\"brands-list\"\u003e\u003c/a\u003e\n\n##### Support detect brands list (2063):\n\n\u003cdetails\u003e\n\u003csummary\u003eShow details\u003c/summary\u003e\n\n  Brand  |  Brand  |  Brand  |  Brand  |  Brand  |  Brand  |  Brand \n--- | --- | --- | --- | --- | --- | ---\n10moons | 2E | 360 | 3GNET | 3GO | 3Q | 4Good\n4ife | 5IVE | 7 Mobile | 8848 | A\u0026K | A1 | A95X\nAAUW | Accent | Accesstyle | Ace | Aceline | Acepad | Acer\nActeck | actiMirror | Adreamer | Adronix | Advan | Advance | Advantage Air\nAEEZO | AFFIX | AfriOne | AG Mobile | AGM | AIDATA | Ainol\nAiris | Airness | AIRON | Airpha | Airtel | Airties | AirTouch\nAIS | Aiuto | Aiwa | Ajib | Akai | AKIRA | Alba\nAlcatel | Alcor | ALDI NORD | ALDI SÜD | Alfawise | Alienware | Aligator\nAll Star | AllCall | AllDocube | allente | ALLINmobile | Allview | Allwinner\nAlps | alpsmart | Altech UEC | Altibox | Altice | Altimo | altron\nAltus | AMA | Amazon | Amazon Basics | AMCV | AMGOO | Amigoo\nAmino | Amoi | ANBERNIC | ANCEL | andersson | Andowl | Angelcare\nAngelTech | Anker | Anry | ANS | ANXONIT | AOC | Aocos\nAocwei | AOpen | Aoro | Aoson | AOYODKG | Apple | Aquarius\nArçelik | Archos | Arian Space | Arival | Ark | ArmPhone | Arnova\nARRIS | Artel | Artizlee | ArtLine | Asano | Asanzo | Ask\nAspera | ASSE | Assistant | astro (MY) | Astro (UA) | Asus | AT\u0026T\nAthesi | Atlantic Electrics | Atmaca Elektronik | ATMAN | ATMPC | ATOL | Atom\nAtouch | Atozee | Attila | Atvio | Audiovox | AUPO | AURIS\nAutan | AUX | Avaya | Avenzo | AVH | Avvio | Awow\nAWOX | AXEN | Axioo | AXXA | Axxion | AYA | AYYA\nAzeyou | AZOM | Azumi Mobile | Azupik | b2m | Backcell | BAFF\nBangOlufsen | Barnes \u0026 Noble | BARTEC | BASE | BAUHN | BB Mobile | BBK\nBDF | BDQ | BDsharing | Beafon | Becker | Beeline | Beelink\nBeetel | Beista | Beko | Bell | Bellphone | Benco | Benesse\nBenQ | BenQ-Siemens | BenWee | Benzo | Beyond | Bezkam | BGH\nBiegedy | Bigben | BIHEE | BilimLand | Billion | Billow | BioRugged\nBird | Bitel | Bitmore | Bittium | Bkav | Black Bear | Black Box\nBlack Fox | Blackpcs | Blackphone | Blackton | Blackview | Blaupunkt | Bleck\nBLISS | Blloc | Blow | Blu | Bluboo | Bluebird | Bluedot\nBluegood | BlueSky | Bluewave | BluSlate | BMAX | Bmobile | BMW\nBMXC | Bobarry | bogo | Bolva | Bookeen | Boost | Botech\nBoway | bq | BrandCode | Brandt | BRAVE | Bravis | BrightSign\nBrigmton | Brondi | BROR | BS Mobile | Bubblegum | Bundy | Bush\nBuzzTV | BYD | BYJU'S | BYYBUO | C Idea | C5 Mobile | CADENA\nCAGI | Caixun | Camfone | Canaima | Canal Digital | Canal+ | Canguro\nCapitel | Captiva | Carbon Mobile | Carrefour | Casio | Casper | Cat\nCavion | CCIT | Cecotec | Ceibal | Celcus | Celkon | Cell-C\nCellacom | CellAllure | Cellution | CENTEK | Centric | CEPTER | CG Mobile\nCGV | Chainway | Changhong | CHCNAV | Cherry Mobile | Chico Mobile | ChiliGreen\nChina Mobile | China Telecom | Chuwi | CipherLab | Citycall | CKK Mobile | Claresta\nClarmin | CLAYTON | ClearPHONE | Clementoni | Cloud | Cloudfone | Cloudpad\nClout | Clovertek | CMF | CnM | Cobalt | Coby Kyros | Cogeco\nCOLORROOM | Colors | Comio | CommScope | Compal | Compaq | COMPUMAX\nComTrade Tesla | Conceptum | Concord | ConCorde | Condor | Connectce | Connex\nConquest | CONSUNG | Continental Edison | Contixo | coocaa | COOD-E | Coolpad\nCoopers | CORN | Cosmote | Covia | Cowon | COYOTE | CPDEVICE\nCreNova | Crescent | Crestron | Cricket | Crius Mea | Crony | Crosscall\nCrown | Ctroniq | Cube | CUBOT | CUD | Cuiud | Cultraview\nCVTE | Cwowdefu | CX | Cyrus | D-Link | D-Tech | Daewoo\nDanew | DangcapHD | Dany | Daria | DASS | Datalogic | Datamini\nDatang | Datawind | Datsun | Dawlance | Dazen | DbPhone | Dbtel\nDcode | DEALDIG | Dell | Denali | Denka | Denver | Desay\nDeWalt | DEXP | DEYI | DF | DGTEC | DIALN | Dialog\nDicam | Digi | Digicel | DIGICOM | Digidragon | DIGIFORS | Digihome\nDigiland | Digit4G | Digma | DIJITSU | DIKOM | DIMO | Dinalink\nDinax | DING DING | Diofox | DIORA | DISH | Disney | Ditecma\nDiva | DiverMax | Divisat | DIXON | DL | DMM | DMOAO\nDNS | DoCoMo | Doffler | Dolamee | Dom.ru | Doogee | Doopro\nDoov | Dopod | Doppio | Dora | DORLAND | Doro | DPA\nDRAGON | Dragon Touch | Dreamgate | DreamStar | DreamTab | Droidlogic | Droxio\nDSDevices | DSIC | Dtac | DUDU AUTO | Dune HD | DUNNS Mobile | Durabook\nDuubee | Dykemann | Dyon | E-Boda | E-Ceros | E-TACHI | E-tel\nEagle | EagleSoar | EAS Electric | Easypix | EBEN | EBEST | Echo Mobiles\necom | ECON | ECOO | EcoStar | ECS | Edenwood | EE\nEFT | EGL | EGOTEK | Ehlel | Einstein | EKINOX | EKO\nEks Mobility | EKT | ELARI | ELE-GATE | Elecson | Electroneum | ELECTRONIA\nElekta | Elektroland | Element | Elenberg | Elephone | Elevate | Elista\nelit | Elong Mobile | Eltex | Ematic | Emporia | ENACOM | ENDURO\nEnergizer | Energy Sistem | Engel | ENIE | Enot | eNOVA | Entity\nEnvizen | Ephone | Epic | Epik One | Epson | Equator | Ergo\nEricsson | Ericy | Erisson | Essential | Essentielb | eSTAR | ETOE\nEton | eTouch | Etuline | Eudora | Eurocase | EUROLUX | Eurostar\nEvercoss | Everest | Everex | Everfine | Everis | Evertek | Evolio\nEvolveo | Evoo | EVPAD | EvroMedia | evvoli | EWIS | EXCEED\nExmart | ExMobile | EXO | Explay | Express LUCK | ExtraLink | Extrem\nEyemoo | EYU | Ezio | Ezze | F\u0026U | F+ | F150\nF2 Mobile | Facebook | Facetel | Facime | Fairphone | Famoco | Famous\nFantec | FaRao Pro | Farassoo | FarEasTone | Fengxiang | Fenoti | FEONAL\nFero | FFF SmartLife | Figgers | FiGi | FiGO | FiiO | Filimo\nFILIX | FinePower | FINIX | Finlux | FireFly Mobile | FISE | Fision\nFITCO | Fluo | Fly | FLYCAT | FLYCOAY | FMT | FNB\nFNF | Fobem | Fondi | Fonos | FONTEL | FOODO | FORME\nFormovie | Formuler | Forstar | Fortis | FortuneShip | FOSSiBOT | Four Mobile\nFourel | Foxconn | FoxxD | FPT | free | Freetel | FreeYond\nFRESH | Frunsi | Fuego | FUJICOM | Fujitsu | Funai | Fusion5\nFuture Mobile Technology | Fxtec | G-Guard | G-PLUS | G-TiDE | G-Touch | Galactic\nGalatec | Galaxy Innovations | Gamma | Garmin-Asus | Gateway | Gazal | Gazer\nGDL | Geanee | Geant | Gear Mobile | Gemini | General Mobile | Genesis\nGeo Phone | GEOFOX | Geotel | Geotex | GEOZON | Getnord | GFive\nGfone | Ghia | Ghong | Ghost | Gigabyte | Gigaset | Gini\nGinzzu | Gionee | GIRASOLE | Globex | Globmall | GlocalMe | Glofiish\nGLONYX | Glory Star | GLX | GN Electronics | GOCLEVER | Gocomma | GoGEN\nGol Mobile | GOLDBERG | GoldMaster | GoldStar | Goly | Gome | GoMobile\nGOODTEL | Google | Goophone | Gooweel | GOtv | Gplus | Gradiente\nGraetz | Grape | Great Asia | Gree | Green Lion | Green Orange | Greentel\nGresso | Gretel | GroBerwert | Grünberg | Grundig | Gtel | GTMEDIA\nGTX | Guophone | GVC Pro | H133 | H96 | Hafury | Haier\nHaipai | Haixu | Hamlet | Hammer | Handheld | HannSpree | Hanseatic\nHanson | HAOQIN | HAOVM | Hardkernel | Harper | Hartens | Hasee\nHathway | HAVIT | HDC | HeadWolf | HEC | Heimat | Helio\nHemilton | HERO | HexaByte | Hezire | Hi | Hi Nova | Hi-Level\nHiberg | HiBy | High Q | HIGH1ONE | Highscreen | HiGrace | HiHi\nHiKing | HiMax | HIPER | Hipstreet | Hiremco | Hisense | Hitachi\nHitech | HKC | HKPro | HLLO | HMD | hoco | HOFER\nHoffmann | HOLLEBERG | Homatics | Hometech | Homtom | Honeywell | HongTop\nHONKUAHG | Hoozo | Hopeland | Horion | Horizon | Horizont | Hosin\nHot Pepper | HOTACK | Hotel | HOTREALS | Hotwav | How | HP\nHTC | Huadoo | Huagan | Huavi | Huawei | Hugerock | Humanware\nHumax | HUMElab | Hurricane | Huskee | Hyatta | Hykker | Hyrican\nHytera | Hyundai | Hyve | I KALL | i-Cherry | I-INN | i-Joy\ni-mate | i-mobile | I-Plus | iBall | iBerry | ibowin | iBrit\nIconBIT | Icone Gold | iData | IDC | iDino | iDroid | iFIT\niGet | iHome Life | iHunt | Ikea | IKI Mobile | iKoMo | iKon\niKonia | IKU Mobile | iLA | iLepo | iLife | iMan | Imaq\niMars | iMI | IMO Mobile | Imose | Impression | iMuz | iNavi\nINCAR | Inch | Inco | iNew | Infiniton | Infinix | InFocus\nInfoKit | Infomir | InFone | Inhon | Inka | Inkti | InnJoo\nInnos | Innostream | iNo Mobile | Inoi | iNOVA | inovo | INQ\nInsignia | INSYS | Intek | Intel | Intex | Invens | Inverto\nInvin | iOcean | IOTWE | iOutdoor | iPEGTOP | iPro | iQ\u0026T\nIQM | IRA | Irbis | iReplace | Iris | iRobot | iRola\niRulu | iSafe Mobile | iStar | iSWAG | IT | iTel | iTruck\nIUNI | iVA | iView | iVooMi | ivvi | iWaylink | iXTech\niYou | iZotron | Jambo | JAY-Tech | Jedi | Jeep | Jeka\nJesy | JFone | Jiake | Jiayu | Jin Tu | Jinga | Jio\nJivi | JKL | Jolla | Joy | JoySurf | JPay | JREN\nJumper | Juniper Systems | Just5 | JUSYEA | JVC | JXD | K-Lite\nK-Touch | Kaan | Kaiomy | Kalley | Kanji | Kapsys | Karbonn\nKata | KATV1 | Kazam | Kazuna | KDDI | Kempler \u0026 Strauss | Kenbo\nKendo | Keneksi | KENSHI | KENWOOD | Kenxinda | Khadas | Kiano\nkidiby | Kingbox | Kingstar | Kingsun | KINGZONE | Kinstone | Kiowa\nKivi | Klipad | KMC | KN Mobile | Kocaso | Kodak | Kogan\nKomu | Konka | Konrow | Koobee | Koolnee | Kooper | KOPO\nKorax | Koridy | Koslam | Kraft | KREZ | KRIP | KRONO\nKrüger\u0026Matz | KT-Tech | KUBO | KuGou | Kuliao | Kult | Kumai\nKurio | KVADRA | Kvant | Kydos | Kyocera | Kyowon | Kzen\nKZG | L-Max | LAIQ | Land Rover | Landvo | Lanin | Lanix\nLark | Laser | Laurus | Lava | LCT | Le Pan | Leader Phone\nLeagoo | Leben | LeBest | Lectrus | Ledstar | LeEco | Leelbox\nLeff | Legend | Leke | Lemco | LEMFO | Lemhoov | Lenco\nLenovo | Leotec | Lephone | Lesia | Lexand | Lexibook | LG\nLiberton | Lifemaxx | Lime | Lingbo | Lingwin | Linnex | Linsar\nLinsay | Listo | LNMBBS | Loewe | LOGAN | Logic | Logic Instrument\nLogicom | Logik | Logitech | LOKMAT | LongTV | Loview | Lovme\nLPX-G | LT Mobile | Lumigon | Lumitel | Lumus | Luna | LUO\nLuxor | Lville | LW | LYF | LYOTECH LABS | M-Horse | M-KOPA\nM-Tech | M.T.T. | M3 Mobile | M4tel | MAC AUDIO | Macoox | Mafe\nMAG | MAGCH | Magicsee | Magnus | Majestic | Malata | Mango\nManhattan | Mann | Manta Multimedia | Mantra | Mara | Marshal | Mascom\nMassgo | Masstel | Master-G | Mastertech | Matco Tools | Matrix | Maunfeld\nMaxcom | Maxfone | Maximus | Maxtron | MAXVI | Maxwell | Maxwest\nMAXX | Maze | Maze Speed | MBI | MBK | MBOX | McLaut\nMDC Store | MDTV | meanIT | Mecer | MECHEN | Mecool | Mediacom\nMedion | MEEG | MEGA VISION | Megacable | MegaFon | MEGAMAX | Meitu\nMeizu | Melrose | MeMobile | Memup | MEO | MESWAO | Meta\nMetz | MEU | MicroMax | Microsoft | Microtech | Mightier | Minix\nMint | Mintt | Mio | Mione | mipo | Miray | Mitchell \u0026 Brown\nMito | Mitsubishi | Mitsui | MIVO | MIWANG | MIXC | MiXzo\nMLAB | MLLED | MLS | MMI | Mobell | Mobicel | MobiIoT\nMobiistar | Mobile Kingdom | Mobiola | Mobistel | MobiWire | Mobo | Mobvoi\nMode Mobile | Modecom | Mofut | Moondrop | MORTAL | Mosimosi | Motiv\nMotorola | Motorola Solutions | Movic | MOVISUN | Movitel | Moxee | mPhone\nMpman | MSI | MStar | MTC | MTN | multibox | Multilaser\nMultiPOS | MwalimuPlus | MYFON | MyGica | MygPad | Mymaga | MyMobile\nMyPhone (PH) | myPhone (PL) | Myria | Myros | Mystery | MyTab | MyWigo\nN-one | Nabi | NABO | Nanho | Naomi Phone | NASCO | National\nNavcity | Navitech | Navitel | Navon | NavRoad | NEC | Necnot\nNedaphone | Neffos | NEKO | Neo | neoCore | Neolix | Neomi\nNeon IQ | Neoregent | Nesons | NetBox | Netgear | Netmak | NETWIT\nNeuImage | NeuTab | NEVIR | New Balance | New Bridge | Newal | Newgen\nNewland | Newman | Newsday | NewsMy | Nexa | NEXBOX | Nexian\nNEXON | NEXT | Next \u0026 NextStar | Nextbit | NextBook | NextTab | NG Optics\nNGM | NGpon | Nikon | NILAIT | NINETEC | NINETOLOGY | Nintendo\nnJoy | NOA | Noain | Nobby | Noblex | NOBUX | noDROPOUT\nNOGA | Nokia | Nomi | Nomu | Noontec | Nordfrost | Nordmende\nNORMANDE | NorthTech | Nos | Nothing | Nous | Novacom | Novex\nNovey | NoviSea | NOVO | NTT West | NuAns | Nubia | NUU Mobile\nNuVision | Nuvo | Nvidia | NYX Mobile | O+ | O2 | Oale\nOangcc | OASYS | Obabox | Ober | Obi | OCEANIC | Odotpad\nOdys | Oilsky | OINOM | ok. | Okapi | Okapia | Oking\nOKSI | OKWU | Olax | Olkya | Ollee | OLTO | Olympia\nOMIX | Onda | OneClick | OneLern | OnePlus | Onida | Onix\nOnkyo | ONN | ONVO | ONYX BOOX | Ookee | Ooredoo | OpelMobile\nOpenbox | Ophone | OPPO | Opsson | Optoma | Orange | Orange Pi\nOrava | Orbic | Orbita | Orbsmart | Ordissimo | Orion | OSCAL\nOTTO | OUJIA | Ouki | Oukitel | OUYA | Overmax | Ovvi\nöwn | Owwo | OX TAB | OYSIN | Oysters | Oyyu | OzoneHD\nP-UP | Pacific Research Alliance | Packard Bell | Padpro | PAGRAER | Paladin | Palm\nPanacom | Panasonic | Panavox | Pano | Panodic | Panoramic | Pantech\nPAPYRE | Parrot Mobile | Partner Mobile | PC Smart | PCBOX | PCD | PCD Argentina\nPEAQ | Pelitt | Pendoo | Penta | Pentagram | Perfeo | Phicomm\nPhilco | Philips | Phonemax | phoneOne | Pico | PINE | Pioneer\nPioneer Computers | PiPO | PIRANHA | Pixela | Pixelphone | PIXPRO | Pixus\nPlanet Computers | Platoon | Play Now | PLDT | Ployer | Plum | PlusStyle\nPluzz | PocketBook | POCO | Point Mobile | Point of View | Polar | PolarLine\nPolaroid | Polestar | PolyPad | Polytron | Pomp | Poppox | POPTEL\nPorsche | Portfolio | Positivo | Positivo BGH | PPDS | PPTV | Premier\nPremio | Prestigio | PRIME | Primepad | Primux | PRISM+ | Pritom\nPrixton | PROFiLO | Proline | Prology | ProScan | PROSONIC | Protruly\nProVision | PULID | Punos | Purism | PVBox | Q-Box | Q-Touch\nQ.Bell | QFX | Qilive | QIN | QLink | QMobile | Qnet Mobile\nQTECH | Qtek | Quantum | Quatro | Qubo | Quechua | Quest\nQuipus | Qumo | Qware | QWATT | R-TV | R3Di | Rakuten\nRamos | Raspberry | Ravoz | Raylandz | Razer | RAZZ | RCA Tablets\nRCT | Reach | Readboy | Realix | Realme | RED | RED-X\nRedbean | Redfox | RedLine | Redway | Reeder | REGAL | RelNAT\nRelndoo | Remdun | Renova | RENSO | rephone | Retroid Pocket | Revo\nRevomovil | Rhino | Ricoh | Rikomagic | RIM | Ringing Bells | Rinno\nRitmix | Ritzviva | Riviera | Rivo | Rizzen | ROADMAX | Roadrover\nRoam Cat | ROCH | Rocket | ROiK | Rokit | Roku | Rombica\nRomsat | Ross\u0026Moor | Rover | RoverPad | Royole | RoyQueen | RT Project\nRTK | RugGear | RuggeTech | Ruggex | Ruio | Runbo | Rupa\nRyte | S-Color | S-TELL | S2Tel | Saba | Safaricom | Sagem\nSagemcom | Saiet | SAILF | Salora | Sambox | Samsung | Samtech\nSamtron | Sanei | Sankey | Sansui | Santin | SANY | Sanyo\nSavio | Sber | SCHAUB LORENZ | Schneider | Schok | SCHONTECH | Scoole\nScosmos | Seatel | SEBBE | Seeken | SEEWO | SEG | Sega\nSEHMAX | Selecline | Selenga | Selevision | Selfix | SEMP TCL | Sencor\nSendo | Senkatel | SENNA | Senseit | Senwa | SERVO | Seuic\nSewoo | SFR | SGIN | Shanling | Sharp | Shift Phones | Shivaki\nShtrikh-M | Shuttle | Sico | Siemens | Sigma | Silelis | Silent Circle\nSilva Schneider | Simbans | simfer | Simply | SINGER | Singtech | Siragon\nSirin Labs | Siswoo | SK Broadband | SKG | SKK Mobile | Sky | Skyline\nSkyStream | Skytech | Skyworth | Smadl | Smailo | Smart | Smart Electronic\nSmart Kassel | Smart Tech | Smartab | SmartBook | SMARTEC | Smartex | Smartfren\nSmartisan | Smarty | Smooth Mobile | Smotreshka | SMT Telecom | SMUX | SNAMI\nSobieTech | Soda | Softbank | Soho Style | Solas | SOLE | SOLO\nSolone | Sonim | SONOS | Sony | Sony Ericsson | SOSH | SoulLink\nSoundmax | SOWLY | Soyes | Spark | Sparx | SPC | Spectralink\nSpectrum | Spice | Spider | Sprint | SPURT | SQOOL | SSKY\nStar | Star-Light | Starlight | Starmobile | Starway | Starwind | STF Mobile\nSTG Telecom | Stilevs | STK | Stonex | Storex | StrawBerry | Stream\nSTRONG | Stylo | Subor | Sugar | SULPICE TV | Sumvision | Sunmax\nSunmi | Sunny | Sunstech | SunVan | Sunvell | SUNWIND | Super General\nSuperBOX | Supermax | SuperSonic | SuperTab | SuperTV | Supra | Supraim\nSurfans | Surge | Suzuki | Sveon | Swipe | SWISSMOBILITY | Swisstone\nSwitel | SWOFY | Syco | SYH | Sylvania | Symphony | Syrox\nSystem76 | T-Mobile | T96 | TADAAM | TAG Tech | Taiga System | Takara\nTALBERG | Talius | Tambo | Tanix | TAUBE | TB Touch | TCL\nTCL SCBC | TD Systems | TD Tech | TeachTouch | Technicolor | Technika | TechniSat\nTechnopc | TECHNOSAT | TechnoTrend | TechPad | TechSmart | Techstorm | Techwood\nTeclast | Tecno Mobile | TecToy | TEENO | Teknosa | Tele2 | Telefunken\nTelego | Telenor | Telia | Telit | Telkom | Telly | Telma\nTeloSystems | Telpo | Temigereev | TENPLUS | Teracube | Tesco | Tesla\nTETC | Tetratab | teXet | ThL | Thomson | Thuraya | TIANYU\nTibuta | Tigers | Time2 | Timovi | TIMvision | Tinai | Tinmo\nTiPhone | Tivax | TiVo | TJC | TJD | TOKYO | Tolino\nTone | TOOGO | Tooky | Top House | Top-Tech | TopDevice | TOPDON\nTopelotek | Toplux | TOPSHOWS | Topsion | Topway | Torex | TORNADO\nTorque | TOSCIDO | Toshiba | Touch Plus | Touchmate | TOX | TPS\nTranspeed | Trecfone | TrekStor | Trevi | TriaPlay | Trident | Trifone\nTrimble | Trio | Tronsmart | True | True Slim | Tsinghua Tongfang | TTEC\nTTfone | TTK-TV | TuCEL | TUCSON | Tunisie Telecom | Turbo | Turbo-X\nTurboKids | TurboPad | Türk Telekom | Turkcell | Tuvio | TV+ | TVC\nTwinMOS | TWM | Twoe | TWZ | TYD | Tymes | U-Magic\nU.S. Cellular | UD | UE | UGINE | Ugoos | Uhans | Uhappy\nUlefone | Umax | UMIDIGI | Umiio | Unblock Tech | Uniden | Unihertz\nUnimax | Uniqcell | Uniscope | Unistrong | Unitech | UNITED | United Group\nUNIWA | Unknown | Unnecto | Unnion Technologies | UNNO | Unonu | UnoPhone\nUnowhy | UOOGOU | Urovo | UTime | UTOK | UTStarcom | UZ Mobile\nV-Gen | V-HOME | V-HOPE | v-mobile | VAIO | VALE | VALEM\nVALTECH | VANGUARD | Vankyo | VANWIN | Vargo | Vastking | VAVA\nVC | VDVD | Vega | Veidoo | Vekta | Venso | Venstar\nVenturer | VEON | Verico | Verizon | Vernee | Verssed | Versus\nVertex | Vertu | Verykool | Vesta | Vestel | VETAS | Vexia\nVGO TEL | ViBox | Victurio | VIDA | Videocon | Videoweb | Viendo\nViewSonic | VIIPOO | VIKUSHA | VILLAON | VIMOQ | Vinabox | Vinga\nVinsoc | Vios | Viper | Vipro | Virzo | Vision Technology | Vision Touch\nVisitech | Visual Land | Vitelcom | Vityaz | Viumee | Vivax | VIVIBright\nVIVIMAGE | Vivo | VIWA | Vizio | Vizmo | VK Mobile | VKworld\nVNPT Technology | VOCAL | Vodacom | Vodafone | VOGA | Völfen | VOLIA\nVOLKANO | Volla | Volt | Vonino | Vontar | Vorago | Vorcom\nVorke | Vormor | Vortex | VORTEX (RO) | Voto | VOX | Voxtel\nVoyo | Vsmart | Vsun | VUCATIMES | Vue Micro | Vulcan | VVETIME\nW\u0026O | WAF | Wainyok | Walker | Waltham | Walton | Waltter\nWanmukang | WANSA | WE | We. by Loewe. | Web TV | Webfleet | WeChip\nWecool | Weelikeit | Weiimi | Weimei | WellcoM | WELLINGTON | Western Digital\nWeston | Westpoint | Wexler | White Mobile | Whoop | Wieppo | Wigor\nWiko | WildRed | Wileyfox | Winds | Wink | Winmax | Winnovo\nWinstar | Wintouch | Wiseasy | WIWA | WizarPos | Wizz | Wolder\nWolfgang | Wolki | WONDER | Wonu | Woo | Wortmann | Woxter\nWOZIFAN | WS | X-AGE | X-BO | X-Mobile | X-TIGI | X-View\nX.Vision | X88 | X96 | X96Q | Xcell | XCOM | Xcruiser\nXElectron | XGEM | XGIMI | Xgody | Xiaodu | Xiaolajiao | Xiaomi\nXion | Xolo | Xoro | XPPen | XREAL | Xshitou | Xsmart\nXtouch | Xtratech | Xwave | XY Auto | Yandex | Yarvik | YASIN\nYELLYOUTH | YEPEN | Yes | Yestel | Yezz | Yoka TV | Yooz\nYota | YOTOPT | Youin | Youwei | Ytone | Yu | YU Fly\nYuandao | YUHO | YUMKEM | YUNDOO | Yuno | YunSong | Yusun\nYxtel | Z-Kai | Zaith | Zamolxe | Zatec | Zealot | Zeblaze\nZebra | Zeeker | Zeemi | Zen | Zenek | Zentality | Zfiner\nZH\u0026K | Zidoo | ZIFFLER | ZIFRO | Zigo | ZIK | Zinox\nZiox | Zonda | Zonko | Zoom | ZoomSmart | Zopo | ZTE\nZuum | Zync | ZYQ | Zyrex | ZZB\n\n\n\u003c/details\u003e\n\n[[top]](#top)\n\n\u003ca name=\"device-types\"\u003e\u003c/a\u003e\n\u003cdetails\u003e\n\u003csummary\u003eSupport device types:\u003c/summary\u003e\n\n| type | id |\n| ----  | ---- |\n| desktop | 0 |\n| smartphone | 1 |\n| tablet | 2 |\n| feature phone | 3 |\n| console | 4 |\n| tv | 5 |\n| car browser | 6 |\n| smart display | 7 | \n| camera | 8 |\n| portable media player | 9 |\n| phablet | 10 |\n| smart speaker | 11 |\n| wearable | 12 |\n| peripheral | 13 |\n\n\u003c/details\u003e\n\n\n##### Support detect browsers list (679):\n\n\u003cdetails\u003e\n\u003csummary\u003eShow details\u003c/summary\u003e\n\n  Browser  |  Browser  |  Browser  |  Browser  |  Browser  |  Browser  |  Browser \n--- | --- | --- | --- | --- | --- | ---\n115 Browser | 18+ Privacy Browser | 1DM Browser | 1DM+ Browser | 2345 Browser | 360 Phone Browser | 360 Secure Browser\n7654 Browser | 7Star | ABrowse | Acoo Browser | AdBlock Browser | Adult Browser | Ai Browser\nAirfind Secure Browser | Aloha Browser | Aloha Browser Lite | AltiBrowser | ALVA | Amaya | Amaze Browser\nAmerigo | Amiga Aweb | Amiga Voyager | Amigo | Android Browser | Anka Browser | ANT Fresco\nANTGalio | AOL Desktop | AOL Explorer | AOL Shield | AOL Shield Pro | Aplix | APN Browser\nAppBrowzer | AppTec Secure Browser | APUS Browser | Arachne | Arc Search | Arctic Fox | Armorfly Browser\nArora | Arvin | Ask.com | Asus Browser | Atlas | Atom | Atomic Web Browser\nAvant Browser | Avast Secure Browser | AVG Secure Browser | Avira Secure Browser | Awesomium | AwoX | Azka Browser\nB-Line | Baidu Browser | Baidu Spark | Bang | Bangla Browser | Basic Web Browser | Basilisk\nBeaker Browser | Beamrise | Belva Browser | Beonex | Berry Browser | Beyond Private Browser | BF Browser\nBitchute Browser | Biyubi | BizBrowser | Black Lion Browser | BlackBerry Browser | BlackHawk | Bloket\nBlue Browser | Bluefy | Bonsai | Borealis Navigator | Brave | BriskBard | BroKeep Browser\nBrowlser | BrowsBit | BrowseHere | Browser Hup Pro | Browser Mini | BrowseX | Browspeed Browser\nBrowzar | Bunjalloo | BXE Browser | Byffox | Cake Browser | Camino | Catalyst\nCatsxp | Cave Browser | CCleaner | Centaury | CG Browser | ChanjetCloud | Charon\nChedot | Cheetah Browser | Cherry Browser | Cheshire | Chim Lac | Chowbo | Chrome\nChrome Frame | Chrome Mobile | Chrome Mobile iOS | Chrome Webview | ChromePlus | Chromium | Chromium GOST\nClassilla | Cliqz | CM Browser | CM Mini | Coast | Coc Coc | Colibri\nColom Browser | Columbus Browser | CometBird | Comfort Browser | Comodo Dragon | Conkeror | CoolBrowser\nCoolNovo | Cornowser | COS Browser | Craving Explorer | Crazy Browser | Cromite | Crow Browser\nCrusta | Cunaguaro | Cyberfox | CyBrowser | Dark Browser | Dark Web | Dark Web Browser\nDark Web Private | dbrowser | Debuggable Browser | Decentr | Deepnet Explorer | deg-degan | Deledao\nDelta Browser | Desi Browser | DeskBrowse | Dezor | Diigo Browser | Dillo | DoCoMo\nDolphin | Dolphin Zero | Dooble | Dorado | Dot Browser | Dragon Browser | DUC Browser\nDuckDuckGo Privacy Browser | East Browser | Easy Browser | Ecosia | Edge WebView | EinkBro | Element Browser\nElements Browser | Elinks | Eolie | Epic | Espial TV Browser | EudoraWeb | EUI Browser\nEvery Browser | Explore Browser | eZ Browser | Falkon | Fast Browser UC Lite | Fast Explorer | Faux Browser\nFennec | fGet | Fiery Browser | Fire Browser | Firebird | Firefox | Firefox Focus\nFirefox Klar | Firefox Mobile | Firefox Mobile iOS | Firefox Reality | Firefox Rocket | Fireweb | Fireweb Navigator\nFlash Browser | Flast | Float Browser | Flock | Floorp | Flow | Flow Browser\nFluid | Flyperlink | FOSS Browser | Freedom Browser | FreeU | Frost | Frost+\nFulldive | G Browser | Galeon | Gener8 | Ghostery Privacy Browser | GinxDroid Browser | Glass Browser\nGNOME Web | GO Browser | GoBrowser | Godzilla Browser | GOG Galaxy | GoKu | Good Browser\nGoogle Earth | Google Earth Pro | GreenBrowser | Habit Browser | Halo Browser | Harman Browser | HasBrowser\nHawk Quick Browser | Hawk Turbo Browser | Headless Chrome | Helio | Herond Browser | Hexa Web Browser | Hi Browser\nhola! Browser | Holla Web Browser | HONOR Browser | HotBrowser | HotJava | HTC Browser | Huawei Browser\nHuawei Browser Mobile | HUB Browser | IBrowse | iBrowser | iBrowser Mini | iCab | iCab Mobile\nIceCat | IceDragon | Iceweasel | iDesktop PC Browser | IE Browser Fast | IE Mobile | Impervious Browser\nInBrowser | Incognito Browser | Indian UC Mini Browser | iNet Browser | Inspect Browser | Insta Browser | Internet Browser Secure\nInternet Explorer | Internet Webbrowser | Intune Managed Browser | Involta Go | Iridium | Iron | Iron Mobile\nIsivioo | IVVI Browser | Japan Browser | Jasmine | JavaFX | Jelly | Jig Browser\nJig Browser Plus | JioSphere | JUZI Browser | K-meleon | K-Ninja | K.Browser | Kapiko\nKazehakase | Keepsafe Browser | KeepSolid Browser | Keyboard Browser | Kids Safe Browser | Kindle Browser | Kinza\nKitt | Kiwi | Kode Browser | Konqueror | KUN | KUTO Mini Browser | Kylo\nLadybird | Lagatos Browser | Lark Browser | Legan Browser | Lenovo Browser | Lexi Browser | LG Browser\nLieBaoFast | Light | Lightning Browser | Lightning Browser Plus | Lilo | Links | Liri Browser\nLogicUI TV Browser | Lolifox | Lotus | Lovense Browser | LT Browser | LuaKit | LUJO TV Browser\nLulumi | Lunascape | Lunascape Lite | Lynket Browser | Lynx | Maelstrom | Mandarin\nMaple | MarsLab Web Browser | MAUI WAP Browser | MaxBrowser | Maxthon | MaxTube Browser | mCent\nMe Browser | Meizu Browser | Mercury | Mi Browser | MicroB | Microsoft Edge | Midori\nMidori Lite | Minimo | Mint Browser | Mises | MixerBox AI | MMBOX XBrowser | Mmx Browser\nMobicip | Mobile Safari | Mobile Silk | Mogok Browser | Monument Browser | Motorola Internet Browser | MxNitro\nMypal | Naenara Browser | Naked Browser | Naked Browser Pro | Navigateur Web | NCSA Mosaic | NetFront\nNetFront Life | NetPositive | Netscape | NetSurf | NextWord Browser | NFS Browser | Ninesky\nNinetails | Nokia Browser | Nokia OSS Browser | Nokia Ovi Browser | NOMone VR Browser | NOOK Browser | Norton Private Browser\nNova Video Downloader Pro | Nox Browser | NTENT Browser | Nuanti Meta | Nuviu | Obigo | Ocean Browser\nOceanHero | Oculus Browser | Odd Browser | Odin | Odin Browser | Odyssey Web Browser | Off By One\nOffice Browser | OH Browser | OH Private Browser | OhHai Browser | OJR Browser | OmniWeb | OnBrowser Lite\nONE Browser | Onion Browser | ONIONBrowser | Open Browser | Open Browser 4U | Open Browser fast 5G | Open Browser Lite\nOpen TV Browser | OpenFin | Openwave Mobile Browser | Opera | Opera Crypto | Opera Devices | Opera GX\nOpera Mini | Opera Mini iOS | Opera Mobile | Opera Neon | Opera Next | Opera Touch | Oppo Browser\nOpus Browser | Orbitum | Orca | Ordissimo | Oregano | Origin In-Game Overlay | Origyn Web Browser\nOrNET Browser | Otter Browser | Owl Browser | Pale Moon | Palm Blazer | Palm Pre | Palm WebPro\nPalmscape | Pawxy | Peach Browser | Peeps dBrowser | Perfect Browser | Perk | Phantom Browser\nPhantom.me | Phoenix | Phoenix Browser | Photon | Pi Browser | PICO Browser | Pintar Browser\nPirateBrowser | PlayFree Browser | Pluma | Pocket Internet Explorer | PocketBook Browser | Polaris | Polarity\nPolyBrowser | Polypane | Presearch | Prism | Privacy Browser | Privacy Explorer Fast Safe | Privacy Pioneer Browser\nPrivacyWall | Private Internet Browser | PronHub Browser | Proxy Browser | ProxyFox | Proxyium | ProxyMax\nProxynet | PSI Secure Browser | Puffin Cloud Browser | Puffin Incognito Browser | Puffin Secure Browser | Puffin Web Browser | Pure Lite Browser\nPure Mini Browser | Qazweb | Qiyu | QJY TV Browser | Qmamu | QQ Browser | QQ Browser Lite\nQQ Browser Mini | QtWeb | QtWebEngine | Quark | Quick Browser | Quick Search TV | QupZilla\nQutebrowser | Qwant Mobile | Rabbit Private Browser | Raise Fast Browser | Rakuten Browser | Rakuten Web Search | Raspbian Chromium\nRCA Tor Explorer | Realme Browser | Rekonq | Reqwireless WebViewer | Roccat | RockMelt | Roku Browser\nSafari | Safari Technology Preview | Safe Exam Browser | Sailfish Browser | SalamWeb | Samsung Browser | Samsung Browser Lite\nSavannah Browser | SavySoda | SberBrowser | Secure Browser | Secure Private Browser | SecureX | Seewo Browser\nSEMC-Browser | Seraphic Sraf | Seznam Browser | SFive | Sharkee Browser | Shiira | Sidekick\nSilverMob US | SimpleBrowser | Singlebox | SiteKiosk | Sizzy | Skye | Skyfire\nSkyLeap | Sleipnir | SlimBoat | Slimjet | Smart Browser | Smart Lenovo Browser | Smart Search \u0026 Web Browser\nSmooz | Snowshoe | Sogou Explorer | Sogou Mobile Browser | Sony Small Browser | SOTI Surf | Soul Browser\nSoundy Browser | SP Browser | Spark | Spectre Browser | Splash | Sputnik Browser | Stampy Browser\nStargon | START Internet Browser | Stealth Browser | Steam In-Game Overlay | Streamy | Sunflower Browser | Sunrise\nSuper Fast Browser | SuperBird | SuperFast Browser | surf | Surf Browser | Surfy Browser | Sushi Browser\nSweet Browser | Swiftfox | Swiftweasel | SX Browser | T-Browser | t-online.de Browser | T+Browser\nTalkTo | Tao Browser | tararia | TenFourFox | Tenta Browser | Tesla Browser | Thor\nTint Browser | Tizen Browser | ToGate | Tor Browser | Total Browser | TQ Browser | TrueLocation Browser\nTUC Mini Browser | Tungsten | TUSK | TV Bro | TV-Browser Internet | TweakStyle | U Browser\nUBrowser | UC Browser | UC Browser HD | UC Browser Mini | UC Browser Turbo | Ui Browser Mini | Ume Browser\nUPhone Browser | UR Browser | Uzbl | Vast Browser | vBrowser | VD Browser | Veera\nVegas Browser | Venus Browser | Vertex Surf | Vewd Browser | Via | Viasat Browser | VibeMate\nVision Mobile Browser | Vivaldi | Vivid Browser Mini | vivo Browser | VMS Mosaic | VMware AirWatch | Vonkeror\nVuhuv | w3m | Waterfox | Wave Browser | Wavebox | Wear Internet Browser | Web Browser \u0026 Explorer\nWeb Explorer | WebDiscover | Webian Shell | WebPositive | Weltweitimnetz Browser | WeTab Browser | Wexond\nWhale Browser | Whale TV Browser | Wolvic | World Browser | wOSBrowser | Wukong Browser | Wyzo\nX Browser Lite | X-VPN | xBrowser | XBrowser Mini | xBrowser Pro Super Fast | Xiino | XnBrowse\nXNX Browser | Xooloo Internet | xStand | XtremeCast | Xvast | Yaani Browser | YAGI\nYahoo! Japan Browser | Yandex Browser | Yandex Browser Corp | Yandex Browser Lite | Yo Browser | Yolo Browser | YouBrowser\nYouCare | Yuzu Browser | Zetakey | Zirco Browser | Zordo Browser | ZTE Browser | Zvu\n\n\u003c/details\u003e\n\n[[top]](#top)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanchezzzhak%2Fnode-device-detector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsanchezzzhak%2Fnode-device-detector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanchezzzhak%2Fnode-device-detector/lists"}