Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

node-device-detector

Package Overview
Dependencies
Maintainers
1
Versions
65
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-device-detector

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

  • 2.0.13
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
14K
increased by2.18%
Maintainers
1
Weekly downloads
 
Created
Source

node-device-detector

Last update: 20/03/2023

Description

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

Code Status

Chai YAML Lint Prettier CodeQL Featured on Openbase

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,
  deviceAliasCode: false,
});
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);

PS: When creating an objectdetector = new DeviceDetector; data for parsing is reloaded from files, consider this, the best option is initialization at application start I recommend seeing examples

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) 
  }
}

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,
  deviceAliasCode: false,
  // ... all options scroll to Setter/Getter/Options
});

const clientHints = new ClientHints();
const userAgent = res.headers['user-agent'];
const clientHintData = clientHints.parse(res.headers);
const result = detector.detect(userAgent, clientHintData);

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

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,
  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,
    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,
  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)
  deviceAliasCode: false,    // adds the device code to result device.code as is (default false)
  maxUserAgentSize: 500,     // uses only 500 chars from useragent string (default null - unlimited)
});

// 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.deviceAliasCode = true;
detector.maxUserAgentSize = 500;

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

Getting device code as it (experimental)

[top]

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:

Test 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
-----
detector.parseDevice (deviceIndexes on) x 10,449 ops/sec ±0.27% (93 runs sampled)
detector.parseDevice (deviceIndexes off) x 261 ops/sec ±88.58% (92 runs sampled)
detector.parseClient (clientIndexes on) x 1,703 ops/sec ±0.36% (92 runs sampled)
detector.parseClient (clientIndexes off) x 859 ops/sec ±0.46% (93 runs sampled)
detector.parseOS x 10,034 ops/sec ±0.23% (94 runs sampled)
detector.detect (indexes off) x 254 ops/sec ±0.46% (85 runs sampled)
detector.detect (indexes on) x 1,114 ops/sec ±1.44% (91 runs sampled)
Other tests
Test 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
-----
detector.parseDevice (deviceIndexes on) x 5,457 ops/sec ±0.23% (95 runs sampled)
detector.parseDevice (deviceIndexes off) x 220 ops/sec ±31.15% (87 runs sampled)
detector.parseClient (clientIndexes on) x 5,797 ops/sec ±0.32% (92 runs sampled)
detector.parseClient (clientIndexes off) x 6,243 ops/sec ±0.47% (93 runs sampled)
detector.parseOS x 7,570 ops/sec ±0.92% (93 runs sampled)
detector.detect (indexes off) x 203 ops/sec ±78.87% (86 runs sampled)
detector.detect (indexes on) x 1,695 ops/sec ±1.49% (88 runs sampled)

Test 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
-----
detector.parseDevice (deviceIndexes on) x 2,315 ops/sec ±0.62% (94 runs sampled)
detector.parseDevice (deviceIndexes off) x 448 ops/sec ±78.47% (89 runs sampled)
detector.parseClient (clientIndexes on) x 1,664 ops/sec ±0.69% (92 runs sampled)
detector.parseClient (clientIndexes off) x 844 ops/sec ±1.09% (93 runs sampled)
detector.parseOS x 10,258 ops/sec ±0.31% (95 runs sampled)
detector.detect (indexes off) x 254 ops/sec ±48.42% (89 runs sampled)
detector.detect (indexes on) x 808 ops/sec ±0.40% (92 runs sampled)
-----
Test 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
-----
detector.parseDevice (deviceIndexes on) x 8,387 ops/sec ±1.21% (94 runs sampled)
detector.parseDevice (deviceIndexes off) x 8,645 ops/sec ±0.32% (95 runs sampled)
detector.parseClient (clientIndexes on) x 1,751 ops/sec ±1.87% (91 runs sampled)
detector.parseClient (clientIndexes off) x 1,227 ops/sec ±0.57% (93 runs sampled)
detector.parseOS x 4,921 ops/sec ±0.25% (97 runs sampled)
detector.detect (indexes off) x 799 ops/sec ±1.04% (92 runs sampled)
detector.detect (indexes on) x 1,032 ops/sec ±0.61% (94 runs sampled)
-----

What about tests?

Yes we use tests, total tests 67k

Get more information about a device (experimental)

This parser is experimental and contains few devices. (1813 devices, alias devices 3879)

Support detail brands/models list:
Show details
BrandDevice countAlias count-BrandDevice countAlias count
3601213-884840
2e22-3gnet01
3q1462-4good101
4ife01-a101
accent05-ace80
acer568-acteck00
advan01-advance014
afrione02-agm40
ainol216-airness00
airo wireless10-airties00
ais02-aiuto00
aiwa00-akai25
alba01-alcatel29433
alcor10-alfawise00
aligator00-allcall03
alldocube26-allview046
allwinner03-altech uec00
altek10-altice00
altron01-amazon1930
amgoo215-amigoo00
amoi622-andowl00
anry00-ans00
aoc00-aoson06
apple4644-archos897
arian space42-ark136
armphone00-arnova036
arris00-artel02
artizlee01-asano01
asanzo10-ask00
assistant219-asus81230
at&t12-atom03
atvio00-avenzo13
avh10-avvio32
axxion00-azumi mobile01
bangolufsen00-barnes & noble16
bb mobile210-beeline111
bellphone11-benq01
beyond07-bezkam10
bigben10-bihee21
billion11-bird10
bitel41-bitmore21
bkav10-black bear20
black fox1812-blackview159
blu1315-bravis2417
cgv10-clarmin30
colors72-cyrus10
digifors11-engel11
firefly mobile41-formuler20
geotel30-gionee40
google35-hisense20
hoffmann11-hotwav181
huawei226586-i-mobile10
imo mobile50-infinix2438
inoi40-intex183
ipro67-irbis150
kiowa10-kurio33
lg127286-malata10
maze40-minix11
mivo32-mobicel31
motorola2724-noa10
nomi11-nuu mobile93
nuvo32-oneplus1848
oppo103202-oukitel80
öwn12-panasonic58
pipo50-poco814
realme6594-samsung167714
sony44172-supra10
tecno mobile91131-tiphone10
utok10-uz mobile10
vernee92-vivo196286
walton130-we80
weimei10-wiko712
wileyfox90-wink40
zync20-zyq113
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 (1599):
Show details
BrandBrandBrandBrandBrandBrandBrand
10moons2E3603GNET3GO3Q4Good
4ife7 Mobile8848A1AccentAceAcer
ActeckactiMirrorAdronixAdvanAdvanceAFFIXAfriOne
AG MobileAGMAIDATAAinolAirisAirnessAIRON
AirphaAirtelAirtiesAISAiutoAiwaAkai
AKIRAAlbaAlcatelAlcorALDI NORDALDI SÜDAlfawise
AligatorAllCallAllDocubeALLINmobileAllviewAllwinnerAlps
Altech UECAlticealtronAMAAmazonAMCVAMGOO
AmigooAminoAmoiAndowlAngelcareAnkerAnry
ANSAOCAocosAOpenAoroAosonAOYODKG
AppleAquariusArchosArian SpaceArkArmPhoneArnova
ARRISArtelArtizleeArtLineAsanoAsanzoAsk
AsperaAssistantAstroAsusAT&TAthesiAtmaca Elektronik
ATMANATOLAtomAttilaAtvioAudiovoxAURIS
AutanAUXAvayaAvenzoAVHAvvioAwow
AxiooAXXAAxxionAYYAAzumi Mobileb2mBackcell
BangOlufsenBarnes & NobleBB MobileBBKBDFBDQBDsharing
BeafonBeckerBeelineBeelinkBeetelBeistaBellphone
BencoBenesseBenQBenQ-SiemensBenWeeBenzoBeyond
BezkamBGHBigbenBIHEEBilimLandBillionBillow
BioRuggedBirdBitelBitmoreBittiumBkavBlack Bear
Black FoxBlackpcsBlackviewBlaupunktBleckBLISSBlloc
BlowBluBlubooBluebirdBluedotBluegoodBlueSky
BluewaveBluSlateBMAXBmobileBMXCBobarrybogo
BookeenBoostBowaybqBrandCodeBrandtBRAVE
BravisBrightSignBrigmtonBrondiBRORBS MobileBubblegum
BundyBushBuzzTVC5 MobileCAGICamfoneCanal Digital
CapitelCaptivaCarbon MobileCarrefourCasioCasperCat
CavionCeibalCelcusCelkonCell-CCellacomCellAllure
CellutionCentricCG MobileCGVChainwayChanghongCherry Mobile
Chico MobileChiliGreenChina MobileChina TelecomChuwiCipherLabCitycall
ClarestaClarminClearPHONEClementoniCloudCloudfoneCloudpad
CloutCnMCobaltCoby KyrosColorsComioCompal
CompaqCOMPUMAXComTrade TeslaConcordConCordeCondorConnectce
ConnexConquestContixoCoolpadCoopersCORNCosmote
CoviaCowonCOYOTECreNovaCrescentCricketCrius Mea
CronyCrosscallCrownCubeCUBOTCVTECwowdefu
CyrusD-LinkD-TechDaewooDanewDanyDASS
DatalogicDataminiDatangDatawindDatsunDazenDbPhone
DbtelDcodeDEALDIGDellDenaliDenverDesay
DeWaltDEXPDEYIDFDGTECDialogDicam
DigiDigicelDIGICOMDigidragonDIGIFORSDigihomeDigiland
Digit4GDigmaDIMODinaxDING DINGDISHDitecma
DivaDiverMaxDivisatDIXONDLDMMDNS
DoCoMoDofflerDolameeDom.ruDoogeeDooproDoov
DopodDoppioDORLANDDoroDRAGONDragon TouchDreamgate
DreamStarDreamTabDroxioDSICDtacDune HDDUNNS Mobile
DuubeeE-BodaE-CerosE-telEagleEasypixEBEN
EBESTEcho MobilesecomECONECOOECSEE
EFTEGLEinsteinEKOEks MobilityEKTELARI
ElecsonElectroneumELECTRONIAElektaElementElenbergElephone
ElevateElong MobileEltexEmaticEmporiaENACOMEnergizer
Energy SistemEngelENIEEnoteNOVAEntityEnvizen
EphoneEpik OneEpsonEquatorErgoEricssonEricy
ErissonEssentialEssentielbeSTAREtoneTouchEtuline
EurocaseEurostarEvercossEverestEverexEvertekEvolio
EvolveoEvooEVPADEvroMediaEWISEXCEEDExmart
ExMobileEXOExplayExtremEYUEzioEzze
F&UF150F2 MobileFacebookFacetelFacimeFairphone
FamocoFamousFantecFaRao ProFarassooFarEasToneFengxiang
FEONALFeroFFF SmartLifeFiggersFiGiFiGOFiiO
FILIXFinePowerFinluxFireFly MobileFISEFluoFly
FLYCATFMTFNBFNFFondiFonosFOODO
FORMEFormulerForstarFortisFour MobileFourelFoxconn
FoxxDFPTFreetelFrunsiFuegoFujitsuFunai
Fusion5Future Mobile TechnologyFxtecG-TiDEG-TouchGalaxy InnovationsGarmin-Asus
GatewayGazerGeaneeGear MobileGeminiGeneral MobileGenesis
GEOFOXGeotelGeotexGEOZONGFiveGhiaGhong
GhostGigabyteGigasetGiniGinzzuGioneeGIRASOLE
GlobexGlofiishGLONYXGLXGOCLEVERGocommaGoGEN
Gol MobileGoldMasterGolyGomeGoMobileGoogleGoophone
GooweelGplusGradienteGrapeGreat AsiaGreeGreentel
GressoGretelGrundigGtelGTMEDIAGuophoneH133
H96HafuryHaierHaipaiHamletHammerHandheld
HannSpreeHAOVMHardkernelHarperHartensHaseeHDC
HeadWolfHelioHEROHexaByteHezireHiHi Nova
Hi-LevelHibergHigh QHighscreenHiHiHiKingHiMax
HipstreetHisenseHitachiHitechHKProHLLOHoffmann
HometechHomtomHoneywellHoozoHorizonHorizontHosin
Hot PepperHotelHOTREALSHotwavHowHPHTC
HuadooHuaganHuaviHuaweiHugerockHumaxHurricane
HuskeeHykkerHyricanHyteraHyundaiHyvei-Cherry
I-INNi-Joyi-matei-mobileiBalliBerryiBrit
IconBITiDataiDroidiGetiHuntIkeaIKI Mobile
iKoMoiKonIKU MobileiLAiLifeiManiMars
iMIIMO MobileImoseImpressioniMuziNaviINCAR
InchIncoiNewInfinitonInfinixInFocusInfoKit
InFoneInktiInnJooInnosInnostreamiNo MobileInoi
iNOVAINQInsigniaINSYSIntekIntelIntex
InvensInvertoInviniOceaniOutdooriPEGTOPiPro
iQ&TIQMIRAIrbisiReplaceIrisiRobot
iRolaiRuluiSafe MobileiStariSWAGITiTel
iTruckIUNIiVAiViewiVooMiivviiWaylink
iXTechiYouiZotronJAY-TechJediJekaJesy
JFoneJiakeJiayuJingaJioJiviJKL
JollaJoyJoySurfJPayJRENJumperJuniper Systems
Just5JVCJXDK-LiteK-TouchKaanKaiomy
KalleyKanjiKapsysKarbonnKataKATV1Kazam
KazunaKDDIKempler & StraussKenboKeneksiKenxindaKhadas
KianoKingboxKingstarKingsunKINGZONEKiowaKivi
KlipadKocasoKodakKoganKomuKonkaKonrow
KoobeeKoolneeKooperKOPOKoridyKoslamKREZ
KRIPKRONOKrüger&MatzKT-TechKUBOKuliaoKult
KumaiKurioKvantKyoceraKyowonKzenKZG
L-MaxLAIQLand RoverLandvoLaninLanixLark
LaurusLavaLCTLe PanLeader PhoneLeagooLeben
LeBestLectrusLedstarLeEcoLeelboxLeffLegend
LekeLEMFOLemhoovLencoLenovoLeotecLephone
LesiaLexandLexibookLGLibertonLifemaxxLingwin
LinnexLinsarListoLNMBBSLoeweLogicLogic Instrument
LogicomLOKMATLoviewLovmeLPX-GLT MobileLumigon
LumitelLumusLunaLuxorLYFM-HorseM-Tech
M.T.T.M3 MobileM4telMAC AUDIOMacooxMafeMagicsee
MagnusMajesticMalataMangoManhattanMannManta Multimedia
MantraMaraMarshalMascomMassgoMasstelMaster-G
MastertechMatrixMaxcomMaxfoneMaximusMaxtronMAXVI
MaxwestMAXXMazeMaze SpeedMBIMBOXMDC Store
MDTVmeanITMecerMecoolMediacomMediaTekMedion
MEEGMegaFonMeituMeizuMelroseMemupMeta
MetzMEUMicroMaxMicrosoftMicrotechMinixMint
MinttMioMioneMirayMitoMitsubishiMitsui
MIVOMIWANGMIXCMiXzoMLLEDMLSMMI
MobellMobicelMobiIoTMobiistarMobile KingdomMobiolaMobistel
MobiWireMoboModecomMofutMosimosiMotorolaMovic
MOVISUNMovitelMoxeemPhoneMpmanMSIMStar
MTCMTNMultilaserMwalimuPlusMYFONMyGicaMygPad
MymagaMyMobileMyPhoneMyriaMyrosMysteryMyTab
MyWigoNabiNaomi PhoneNASCONationalNavcityNavitech
NavitelNavonNavRoadNECNecnotNedaphoneNeffos
NEKONeoneoCoreNeolixNeomiNeon IQNetgear
NetmakNeuImageNew BalanceNew BridgeNewgenNewlandNewman
NewsdayNewsMyNexaNEXBOXNexianNEXONNEXT
NextbitNextBookNextTabNG OpticsNGMNGponNikon
NINETECNintendonJoyNOANoainNobbyNoblex
NOBUXNOGANokiaNomiNomuNoontecNordmende
NorthTechNosNothing PhoneNousNovexNoveyNOVO
NTT WestNuAnsNubiaNUU MobileNuVisionNuvoNvidia
NYX MobileO+O2OaleOangccOASYSObabox
ObiOdotpadOdysOINOMOkOkapiaOKSI
OKWUOlaxOlleeOLTOOlympiaOMIXOnda
OneClickOnePlusOnixOnkyoONNONYX BOOXOokee
OpelMobileOpenboxOphoneOPPOOpssonOptomaOrange
OrbicOrbitaOrbsmartOrdissimoOrionOSCALOTTO
OUJIAOukiOukitelOUYAOvermaxOvviöwn
OwwoOYSINOystersOyyuOzoneHDP-UPPackard Bell
PaladinPalmPanacomPanasonicPanoPantechPAPYRE
Parrot MobilePartner MobilePC SmartPCBOXPCDPCD ArgentinaPEAQ
PelittPendooPentagramPerfeoPhicommPhilcoPhilips
PhonemaxphoneOnePicoPINEPioneerPioneer ComputersPiPO
PIRANHAPixelaPixelphonePixusPlanet ComputersPloyerPlum
PlusStylePluzzPocketBookPOCOPoint MobilePoint of ViewPolar
PolarLinePolaroidPolestarPolyPadPolytronPompPoppox
POPTELPorschePositivoPositivo BGHPPTVPremioPrestigio
PRIMEPrimepadPrimuxPritomPrixtonPROFiLOProline
PrologyProScanProtrulyProVisionPULIDPurismQ-Box
Q-TouchQ.BellQFXQiliveQLinkQMobileQnet Mobile
QTECHQtekQuantumQuatroQuboQuechuaQuest
QuipusQumoQwareR-TVRakutenRamosRaspberry
RavozRaylandzRazerRCA TabletsReachReadboyRealme
REDRedbeanRedfoxRedwayReederREGALRelNAT
RemdunRetroid PocketRevoRevomovilRicohRikomagicRIM
RinnoRitmixRitzvivaRivieraRivoRizzenROADMAX
RoadroverRoam CatRokitRokuRombicaRoss&MoorRover
RoverPadRoyoleRoyQueenRT ProjectRugGearRuggexRuio
RunboRupaRyteS-TELLS2TelSabaSafaricom
SagemSaietSaloraSamsungSamtechSaneiSankey
SansuiSantinSANYSanyoSavioSCBCSchneider
SchokScosmosSeatelSEBBESeekenSEGSega
SeleclineSelengaSelevisionSelfixSEMP TCLSencorSendo
SenkatelSenseitSenwaSeuicSewooSFRSGIN
ShanlingSharpShift PhonesShivakiShtrikh-MShuttleSico
SiemensSigmaSilelisSilent CircleSimbansSimplySingtech
SiragonSirin LabsSK BroadbandSKGSkySkylineSkyworth
SmadlSmailoSmartSmart ElectronicSmart KasselSmartabSmartBook
SMARTECSmartexSmartfrenSmartisanSmartySmooth MobileSmotreshka
SNAMISodaSoftbankSoho StyleSOLESOLOSolone
SonimSONOSSonySony EricssonSOSHSoundmaxSoyes
SparkSPCSpectralinkSpectrumSpiceSprintSQOOL
SSKYStarStarlightStarmobileStarwayStarwindSTF Mobile
STG TelecomSTKStonexStorexStrawBerryStreamSTRONG
StyloSuborSugarSumvisionSunmaxSunmiSunny
SunstechSunVanSunvellSUNWINDSuperBOXSuperSonicSuperTab
SupraSurgeSuzukiSwipeSWISSMOBILITYSwisstoneSwitel
SWTVSycoSYHSylvaniaSymphonySyroxT-Mobile
T96TAG TechTaiga SystemTakaraTaliusTamboTanix
TB TouchTCLTD SystemsTD TechTeachTouchTechnicolorTechnika
TechniSatTechnopcTechnoTrendTechPadTechwoodTeclastTecno Mobile
TecToyTEENOTeknosaTele2TelefunkenTelegoTelenor
TeliaTelitTelmaTeloSystemsTelpoTENPLUSTeracube
TescoTeslaTETCTetratabteXetThLThomson
ThurayaTIANYUTibutaTigersTime2TimoviTIMvision
TinaiTinmoTiPhoneTiVoTJCTOKYOTolino
ToneTookyTop HouseTOPDONTopelotekTopluxTopsion
TopwayTorexTorqueTOSCIDOToshibaTouch PlusTouchmate
TOXTranspeedTrekStorTreviTridentTrifoneTrio
TronsmartTrueTrue SlimTTECTTK-TVTuCELTunisie Telecom
TurboTurbo-XTurboKidsTurboPadTürk TelekomTurkcellTVC
TWMTwoeTWZTymesU-MagicU.S. CellularUE
UgoosUhansUhappyUlefoneUmaxUMIDIGIUnblock Tech
UnidenUnihertzUnimaxUniqcellUniscopeUnistrongUnitech
UNIWAUnknownUnnectoUnnion TechnologiesUNNOUnonuUnowhy
UrovoUTimeUTOKUTStarcomUZ MobileV-GenV-HOME
V-HOPEv-mobileVAIOVALEMVALTECHVankyoVargo
VastkingVAVAVCVDVDVegaVensoVenstar
VenturerVEONVericoVerizonVerneeVerssedVersus
VertexVertuVerykoolVestaVestelVexiaVGO TEL
ViBoxVicturioVIDAVideoconVideowebViewSonicVinabox
VingaVinsocViosViproVirzoVision TouchVitelcom
ViumeeVivaxVIVIMAGEVivoVIWAVizioVizmo
VK MobileVKworldVodacomVodafoneVOGAVölfenVolt
VoninoVontarVoragoVorcomVorkeVormorVortex
VotoVOXVoxtelVoyoVsmartVsunVUCATIMES
Vue MicroVulcanVVETIMEWaltonWaltterWanmukangWANSA
WEWeb TVWebfleetWecoolWeelikeitWeimeiWellcoM
WELLINGTONWestern DigitalWestpointWexlerWhite MobileWieppoWigor
WikoWileyfoxWindsWinkWinmaxWinnovoWinstar
WintouchWiseasyWIWAWizarPosWizzWolderWolfgang
WolkiWonuWooWortmannWoxterX-AGEX-BO
X-MobileX-TIGIX-ViewX.VisionX88X96X96Q
XCOMXcruiserXElectronXGIMIXgodyXiaoduXiaolajiao
XiaomiXionXoloXoroXshitouXtouchXtratech
XwaveYandexYarvikYASINYELLYOUTHYEPENYes
YestelYezzYoka TVYoozYotaYOTOPTYouin
YouweiYtoneYuYU FlyYuandaoYUHOYUMKEM
YUNDOOYunoYunSongYusunYxtelZaithZamolxe
ZatecZealotZebraZeekerZeemiZenZenek
ZentalityZfinerZH&KZidooZIFROZIKZinox
ZioxZondaZonkoZoomSmartZopoZTEZuum
ZyncZYQZyrex

[top]

Support device types:
typeid
desktop0
smartphone1
tablet2
feature phone3
console4
tv5
car browser6
smart display7
camera8
portable media player9
phablet10
smart speaker11
wearable12
peripheral13
Support detect browsers list (498):
Show details
BrowserBrowserBrowserBrowserBrowserBrowserBrowser
115 Browser18+ Privacy Browser1DM Browser1DM+ Browser2345 Browser360 Browser360 Phone Browser
7654 Browser7StarABrowseAdBlock BrowserAdult BrowserAloha BrowserAloha Browser Lite
AmayaAmaze BrowserAmerigoAmiga AwebAmiga VoyagerAmigoAndroid Browser
Anka BrowserANT FrescoANTGalioAOL DesktopAOL ShieldAOL Shield ProAPN Browser
AppBrowzerAPUS BrowserArctic FoxAroraArvinAsk.comAsus Browser
AtlasAtomAtomic Web BrowserAvant BrowserAvast Secure BrowserAVG Secure BrowserAvira Scout
AwoXAzka BrowserB-LineBaidu BrowserBaidu SparkBangla BrowserBasilisk
Beaker BrowserBeamriseBelva BrowserBeonexBerry BrowserBeyond Private BrowserBF Browser
Bitchute BrowserBiyubiBlack Lion BrowserBlackBerry BrowserBlackHawkBloketBlue Browser
BonsaiBorealis NavigatorBraveBriskBardBrowlserBrowseHereBrowser Hup Pro
BrowseXBrowspeed BrowserBrowzarBunjallooByffoxCake BrowserCamino
CCleanerCentauryCG BrowserChanjetCloudCharonChedotCheetah Browser
Cherry BrowserCheshireChim LacChowboChromeChrome FrameChrome Mobile
Chrome Mobile iOSChrome WebviewChromePlusChromiumChromium GOSTCM BrowserCM Mini
CoastCoc CocColibriCometBirdComfort BrowserComodo DragonConkeror
CoolBrowserCoolNovoCornowserCOS BrowserCraving ExplorerCrazy BrowserCrusta
CunaguaroCyberfoxCyBrowserDark Web BrowserdbrowserDebuggable BrowserDecentr
Deepnet Explorerdeg-deganDeledaoDelta BrowserDesi BrowserDeskBrowseDillo
DolphinDolphin ZeroDoobleDoradoDot BrowserDragon BrowserDUC Browser
DuckDuckGo Privacy BrowserEasy BrowserEcosiaEdge WebViewEinkBroElement BrowserElements Browser
ElinksEpicEspial TV BrowserEUI BrowserExplore BrowsereZ BrowserFalkon
Fast Browser UC LiteFast ExplorerFaux BrowserFennecFiery BrowserFirebirdFirefox
Firefox FocusFirefox KlarFirefox MobileFirefox Mobile iOSFirefox RealityFirefox RocketFireweb
Fireweb NavigatorFlash BrowserFlastFloat BrowserFlockFloorpFlow
Flow BrowserFluidFlyperlinkFreeUFrost+FulldiveG Browser
GaleonGener8Ghostery Privacy BrowserGinxDroid BrowserGlass BrowserGNOME WebGoBrowser
GOG GalaxyGoogle EarthGoogle Earth ProHarman BrowserHasBrowserHawk Quick BrowserHawk Turbo Browser
Headless ChromeHelioHexa Web BrowserHi Browserhola! BrowserHotJavaHTC Browser
Huawei BrowserHuawei Browser MobileHUB BrowserIBrowseiBrowseriBrowser MiniiCab
iCab MobileIceCatIceDragonIceweaseliDesktop PC BrowserIE Browser FastIE Mobile
Indian UC Mini BrowserInspect BrowserInternet Browser SecureInternet ExplorerIridiumIronIron Mobile
IsiviooJapan BrowserJasmineJavaFXJellyJig BrowserJig Browser Plus
Jio BrowserJioPagesK-meleonK.BrowserKapikoKazehakaseKeepsafe Browser
Kids Safe BrowserKindle BrowserKinzaKiwiKode BrowserKonquerorKUTO Mini Browser
KyloLagatos BrowserLark BrowserLenovo BrowserLexi BrowserLG BrowserLieBaoFast
LightLightning BrowserLiloLinksLolifoxLovense BrowserLT Browser
LuaKitLulumiLunascapeLunascape LiteLynket BrowserLynxMaelstrom
MandarinMAUI WAP BrowserMaxthonMaxTube BrowsermCentMe BrowserMeizu Browser
MercuryMicroBMicrosoft EdgeMidoriMidori LiteMinimoMint Browser
MIUI BrowserMmx BrowserMobicipMobile SafariMobile SilkMonument BrowserMxNitro
MypalNaked BrowserNaked Browser ProNavigateur WebNCSA MosaicNetFrontNetFront Life
NetPositiveNetscapeNetSurfNextWord BrowserNFS BrowserNokia BrowserNokia OSS Browser
Nokia Ovi BrowserNova Video Downloader ProNox BrowserNTENT BrowserObigoOceanHeroOculus Browser
OdinOdin BrowserOdyssey Web BrowserOff By OneOffice BrowserOH BrowserOH Private Browser
OhHai BrowserOmniWebONE BrowserOpen BrowserOpen Browser 4UOpen Browser fast 5GOpenFin
Openwave Mobile BrowserOperaOpera CryptoOpera DevicesOpera GXOpera MiniOpera Mini iOS
Opera MobileOpera NeonOpera NextOpera TouchOppo BrowserOrcaOrdissimo
OreganoOrigin In-Game OverlayOrigyn Web BrowserOtter BrowserPale MoonPalm BlazerPalm Pre
Palm WebProPalmscapePeeps dBrowserPerfect BrowserPhantom BrowserPhantom.mePhoenix
Phoenix BrowserPi BrowserPlayFree BrowserPlumaPocketBook BrowserPolarisPolarity
PolyBrowserPolypanePrivacy Explorer Fast SafePrivacyWallPronHub BrowserPSI Secure BrowserPuffin
Puffin Web BrowserPure Lite BrowserPure Mini BrowserQazwebQQ BrowserQQ Browser LiteQQ Browser Mini
QtWebEngineQuarkQuick BrowserQupZillaQutebrowserQwant MobileRabbit Private Browser
Raise Fast BrowserRealme BrowserRekonqReqwireless WebViewerRockMeltSafariSafari Technology Preview
Safe Exam BrowserSailfish BrowserSalamWebSamsung BrowserSavannah BrowserSavySodaSecure Browser
Secure Private BrowserSeewo BrowserSEMC-BrowserSeraphic SrafSeznam BrowserSFiveSharkee Browser
ShiiraSidekickSilverMob USSimpleBrowserSiteKioskSizzySkyfire
SleipnirSlimjetSmart BrowserSmart Lenovo BrowserSmart Search & Web BrowserSmoozSnowshoe
Sogou ExplorerSogou Mobile BrowserSony Small BrowserSOTI SurfSoul BrowserSP BrowserSpectre Browser
SplashSputnik BrowserStampy BrowserStargonSTART Internet BrowserSteam In-Game OverlayStreamy
SunriseSuper Fast BrowserSuperBirdSuperFast BrowsersurfSurf BrowserSushi Browser
Sweet BrowserSwiftfoxSX BrowserT-Browsert-online.de BrowserT+BrowserTao Browser
TenFourFoxTenta BrowserTesla BrowserTint BrowserTizen BrowserToGateTUC Mini Browser
TungstenTV BroTweakStyleU BrowserUBrowserUC BrowserUC Browser HD
UC Browser MiniUC Browser TurboUi Browser MiniUme BrowserUR BrowserUzblVast Browser
vBrowserVegas BrowserVenus BrowserViaViasat BrowserVision Mobile BrowserVivaldi
Vivid Browser Minivivo BrowserVMware AirWatchWaterfoxWave BrowserWear Internet BrowserWeb Browser & Explorer
Web ExplorerWebPositiveWeTab BrowserWhale BrowserWolvicwOSBrowserX Browser Lite
X-VPNxBrowserXBrowser MinixBrowser Pro Super FastXiinoXNX BrowserXooloo Internet
xStandXtremeCastXvastYaani BrowserYAGIYahoo! Japan BrowserYandex Browser
Yandex Browser LiteYo BrowserYolo BrowserYouCareYuzu BrowserZetakeyZirco Browser
Zvu

[top]

Keywords

FAQs

Package last updated on 20 Mar 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc