2.1.0 • Published 1 month ago

node-device-detector v2.1.0

Weekly downloads
3,401
License
MIT
Repository
github
Last release
1 month ago

node-device-detector

Last update: 27/03/2024

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,
  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);

PS: When creating an objectdetector = new DeviceDetector(DeviceDetectorOptions); 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) 
    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,
  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 * window.devicePixelRatio)
   height: '1440',           //  Math.ceil(window.screen.height * window.devicePixelRatio)
   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,
  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: true,     // adds the 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 the device info 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.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 deviceAppleHint = detector.getParseDeviceAppleHint();  // result DeviceAppleHint 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:

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)
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 74.9k

Get more information about a device (experimental)

This parser is experimental and contains few devices. (1832 devices, alias devices 3898)

Support detail brands/models list:
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-blackview169
blu1315-bravis2417
cgv10-clarmin30
colors72-cyrus10
digifors11-engel11
firefly mobile41-formuler20
geotel30-gionee40
google35-hisense20
hoffmann11-hotwav181
huawei226586-i-mobile10
imo mobile50-infinix2640
inoi40-intex183
ipro67-irbis150
kiowa10-kurio33
lg127286-malata10
maze40-minix11
mivo32-mobicel31
motorola2724-noa10
nomi11-nuu mobile93
nuvo32-oneplus1848
oppo104204-oukitel80
öwn12-panasonic58
pipo50-poco915
realme6796-samsung170718
sony44172-supra10
tecno mobile91131-tiphone10
utok10-uz mobile10
vernee92-vivo196286
walton130-we80
weimei10-wiko712
wileyfox90-wink40
xiaomi98-zync20
zyq113-
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 (1798):
BrandBrandBrandBrandBrandBrandBrand
10moons2E3603GNET3GO3Q4Good
4ife5IVE7 Mobile8848A&KA1A95X
AccentAccesstyleAceAcerActeckactiMirrorAdronix
AdvanAdvanceAdvantage AirAEEZOAFFIXAfriOneAG Mobile
AGMAIDATAAinolAirisAirnessAIRONAirpha
AirtelAirtiesAISAiutoAiwaAkaiAKIRA
AlbaAlcatelAlcorALDI NORDALDI SÜDAlfawiseAligator
AllCallAllDocubeALLINmobileAllviewAllwinnerAlpsAltech UEC
AlticeAltimoaltronAltusAMAAmazonAmazon Basics
AMCVAMGOOAmigooAminoAmoiAndowlAngelcare
AnkerAnryANSANXONITAOCAocosAOpen
AoroAosonAOYODKGAppleAquariusArçelikArchos
Arian SpaceArkArmPhoneArnovaARRISArtelArtizlee
ArtLineAsanoAsanzoAskAsperaASSEAssistant
AstroAsusAT&TAthesiAtlantic ElectricsAtmaca ElektronikATMAN
ATOLAtomAttilaAtvioAudiovoxAURISAutan
AUXAvayaAvenzoAVHAvvioAwowAWOX
AXENAxiooAXXAAxxionAYAAYYAAzumi Mobile
b2mBackcellBAFFBangOlufsenBarnes & NobleBARTECBASE
BAUHNBB MobileBBKBDFBDQBDsharingBeafon
BeckerBeelineBeelinkBeetelBeistaBekoBellphone
BencoBenesseBenQBenQ-SiemensBenWeeBenzoBeyond
BezkamBGHBigbenBIHEEBilimLandBillionBillow
BioRuggedBirdBitelBitmoreBittiumBkavBlack Bear
Black BoxBlack FoxBlackpcsBlackviewBlaupunktBleckBLISS
BllocBlowBluBlubooBluebirdBluedotBluegood
BlueSkyBluewaveBluSlateBMAXBmobileBMWBMXC
BobarrybogoBolvaBookeenBoostBotechBoway
bqBrandCodeBrandtBRAVEBravisBrightSignBrigmton
BrondiBRORBS MobileBubblegumBundyBushBuzzTV
C5 MobileCAGICamfoneCanal DigitalCanal+CanguroCapitel
CaptivaCarbon MobileCarrefourCasioCasperCatCavion
CecotecCeibalCelcusCelkonCell-CCellacomCellAllure
CellutionCentricCG MobileCGVChainwayChanghongCherry Mobile
Chico MobileChiliGreenChina MobileChina TelecomChuwiCipherLabCitycall
CKK MobileClarestaClarminCLAYTONClearPHONEClementoniCloud
CloudfoneCloudpadCloutCnMCobaltCoby KyrosColors
ComioCompalCompaqCOMPUMAXComTrade TeslaConceptumConcord
ConCordeCondorConnectceConnexConquestContinental EdisonContixo
COOD-ECoolpadCoopersCORNCosmoteCoviaCowon
COYOTECreNovaCrescentCricketCrius MeaCronyCrosscall
CrownCtroniqCubeCUBOTCVTECwowdefuCyrus
D-LinkD-TechDaewooDanewDangcapHDDanyDASS
DatalogicDataminiDatangDatawindDatsunDazenDbPhone
DbtelDcodeDEALDIGDellDenaliDenverDesay
DeWaltDEXPDEYIDFDGTECDialogDicam
DigiDigicelDIGICOMDigidragonDIGIFORSDigihomeDigiland
Digit4GDigmaDIJITSUDIKOMDIMODinalinkDinax
DING DINGDIORADISHDisneyDitecmaDivaDiverMax
DivisatDIXONDLDMMDNSDoCoMoDoffler
DolameeDom.ruDoogeeDooproDoovDopodDoppio
DORLANDDoroDPADRAGONDragon TouchDreamgateDreamStar
DreamTabDroidlogicDroxioDSDevicesDSICDtacDune HD
DUNNS MobileDurabookDuubeeDyonE-BodaE-CerosE-tel
EagleEAS ElectricEasypixEBENEBESTEcho Mobilesecom
ECONECOOECSEdenwoodEEEFTEGL
EinsteinEKINOXEKOEks MobilityEKTELARIElecson
ElectroneumELECTRONIAElektaElektrolandElementElenbergElephone
ElevateElong MobileEltexEmaticEmporiaENACOMEnergizer
Energy SistemEngelENIEEnoteNOVAEntityEnvizen
EphoneEpicEpik OneEpsonEquatorErgoEricsson
EricyErissonEssentialEssentielbeSTARETOEEton
eTouchEtulineEurocaseEurostarEvercossEverestEverex
EvertekEvolioEvolveoEvooEVPADEvroMediaEWIS
EXCEEDExmartExMobileEXOExplayExpress LUCKExtrem
EYUEzioEzzeF&UF+F150F2 Mobile
FacebookFacetelFacimeFairphoneFamocoFamousFantec
FaRao ProFarassooFarEasToneFengxiangFenotiFEONALFero
FFF SmartLifeFiggersFiGiFiGOFiiOFilimoFILIX
FinePowerFinluxFireFly MobileFISEFITCOFluoFly
FLYCATFMTFNBFNFFobemFondiFonos
FOODOFORMEFormulerForstarFortisFOSSiBOTFour Mobile
FourelFoxconnFoxxDFPTfreeFreetelFreeYond
FrunsiFuegoFujitsuFunaiFusion5Future Mobile TechnologyFxtec
G-TiDEG-TouchGalacticGalaxy InnovationsGammaGarmin-AsusGateway
GazerGeaneeGeantGear MobileGeminiGeneral MobileGenesis
GEOFOXGeotelGeotexGEOZONGetnordGFiveGfone
GhiaGhongGhostGigabyteGigasetGiniGinzzu
GioneeGIRASOLEGlobexGlofiishGLONYXGLXGOCLEVER
GocommaGoGENGol MobileGoldMasterGolyGomeGoMobile
GOODTELGoogleGoophoneGooweelGplusGradienteGraetz
GrapeGreat AsiaGreeGreen OrangeGreentelGressoGretel
GroBerwertGrundigGtelGTMEDIAGTXGuophoneH133
H96HafuryHaierHaipaiHamletHammerHandheld
HannSpreeHanseaticHAOQINHAOVMHardkernelHarperHartens
HaseeHathwayHDCHeadWolfHelioHEROHexaByte
HezireHiHi NovaHi-LevelHibergHigh QHighscreen
HiHiHiKingHiMaxHIPERHipstreetHiremcoHisense
HitachiHitechHKCHKProHLLOHOFERHoffmann
HomaticsHometechHomtomHoneywellHoozoHorizonHorizont
HosinHot PepperHotelHOTREALSHotwavHowHP
HTCHuadooHuaganHuaviHuaweiHugerockHumax
HurricaneHuskeeHykkerHyricanHyteraHyundaiHyve
i-CherryI-INNi-Joyi-matei-mobileI-PlusiBall
iBerryibowiniBritIconBITiDataiDinoiDroid
iGetiHuntIkeaIKI MobileiKoMoiKoniKonia
IKU MobileiLAiLepoiLifeiManImaqiMars
iMIIMO MobileImoseImpressioniMuziNaviINCAR
InchIncoiNewInfinitonInfinixInFocusInfoKit
InfomirInFoneInhonInkaInktiInnJooInnos
InnostreamiNo MobileInoiiNOVAINQInsigniaINSYS
IntekIntelIntexInvensInvertoInviniOcean
IOTWEiOutdooriPEGTOPiProiQ&TIQMIRA
IrbisiReplaceIrisiRobotiRolaiRuluiSafe Mobile
iStariSWAGITiTeliTruckIUNIiVA
iViewiVooMiivviiWaylinkiXTechiYouiZotron
JAY-TechJediJeepJekaJesyJFoneJiake
JiayuJingaJioJiviJKLJollaJoy
JoySurfJPayJRENJumperJuniper SystemsJust5JVC
JXDK-LiteK-TouchKaanKaiomyKalleyKanji
KapsysKarbonnKataKATV1KazamKazunaKDDI
Kempler & StraussKenboKendoKeneksiKenxindaKhadasKiano
KingboxKingstarKingsunKINGZONEKinstoneKiowaKivi
KlipadKN MobileKocasoKodakKoganKomuKonka
KonrowKoobeeKoolneeKooperKOPOKoridyKoslam
KraftKREZKRIPKRONOKrüger&MatzKT-TechKUBO
KuGouKuliaoKultKumaiKurioKvantKydos
KyoceraKyowonKzenKZGL-MaxLAIQLand Rover
LandvoLaninLanixLarkLaurusLavaLCT
Le PanLeader PhoneLeagooLebenLeBestLectrusLedstar
LeEcoLeelboxLeffLegendLekeLemcoLEMFO
LemhoovLencoLenovoLeotecLephoneLesiaLexand
LexibookLGLibertonLifemaxxLimeLingwinLinnex
LinsarLinsayListoLNMBBSLoeweLogicLogic Instrument
LogicomLogikLOKMATLoviewLovmeLPX-GLT Mobile
LumigonLumitelLumusLunaLuxorLYFM-Horse
M-TechM.T.T.M3 MobileM4telMAC AUDIOMacooxMafe
MagicseeMagnusMajesticMalataMangoManhattanMann
Manta MultimediaMantraMaraMarshalMascomMassgoMasstel
Master-GMastertechMatco ToolsMatrixMaunfeldMaxcomMaxfone
MaximusMaxtronMAXVIMaxwellMaxwestMAXXMaze
Maze SpeedMBIMBOXMDC StoreMDTVmeanITMecer
MecoolMediacomMediaTekMedionMEEGMEGA VISIONMegaFon
MeituMeizuMelroseMeMobileMemupMEOMeta
MetzMEUMicroMaxMicrosoftMicrotechMinixMint
MinttMioMioneMirayMitchell & BrownMitoMitsubishi
MitsuiMIVOMIWANGMIXCMiXzoMLABMLLED
MLSMMIMobellMobicelMobiIoTMobiistarMobile Kingdom
MobiolaMobistelMobiWireMoboMobvoiModecomMofut
MosimosiMotivMotorolaMovicMOVISUNMovitelMoxee
mPhoneMpmanMSIMStarMTCMTNMultilaser
MultiPOSMwalimuPlusMYFONMyGicaMygPadMymagaMyMobile
MyPhoneMyriaMyrosMysteryMyTabMyWigoN-one
NabiNABONanhoNaomi PhoneNASCONationalNavcity
NavitechNavitelNavonNavRoadNECNecnotNedaphone
NeffosNEKONeoneoCoreNeolixNeomiNeon IQ
NetBoxNetgearNetmakNeuImageNeuTabNEVIRNew Balance
New BridgeNewgenNewlandNewmanNewsdayNewsMyNexa
NEXBOXNexianNEXONNEXTNext & NextStarNextbitNextBook
NextTabNG OpticsNGMNGponNikonNINETECNintendo
nJoyNOANoainNobbyNoblexNOBUXnoDROPOUT
NOGANokiaNomiNomuNoontecNordmendeNORMANDE
NorthTechNosNothing PhoneNousNovacomNovexNovey
NOVONTT WestNuAnsNubiaNUU MobileNuVisionNuvo
NvidiaNYX MobileO+O2OaleOangccOASYS
ObaboxOberObiOCEANICOdotpadOdysOINOM
OkOkapiaOkingOKSIOKWUOlaxOlkya
OlleeOLTOOlympiaOMIXOndaOneClickOneLern
OnePlusOnidaOnixOnkyoONNONVOONYX BOOX
OokeeOoredooOpelMobileOpenboxOphoneOPPOOpsson
OptomaOrangeOravaOrbicOrbitaOrbsmartOrdissimo
OrionOSCALOTTOOUJIAOukiOukitelOUYA
OvermaxOvviöwnOwwoOYSINOystersOyyu
OzoneHDP-UPPacific Research AlliancePackard BellPaladinPalmPanacom
PanasonicPanavoxPanoPanodicPanoramicPantechPAPYRE
Parrot MobilePartner MobilePC SmartPCBOXPCDPCD ArgentinaPEAQ
PelittPendooPentaPentagramPerfeoPhicommPhilco
PhilipsPhonemaxphoneOnePicoPINEPioneerPioneer Computers
PiPOPIRANHAPixelaPixelphonePixusPlanet ComputersPlatoon
Play NowPloyerPlumPlusStylePluzzPocketBookPOCO
Point MobilePoint of ViewPolarPolarLinePolaroidPolestarPolyPad
PolytronPompPoppoxPOPTELPorschePositivoPositivo BGH
PPTVPremierPremioPrestigioPRIMEPrimepadPrimux
PritomPrixtonPROFiLOProlinePrologyProScanPROSONIC
ProtrulyProVisionPULIDPunosPurismQ-BoxQ-Touch
Q.BellQFXQiliveQLinkQMobileQnet MobileQTECH
QtekQuantumQuatroQuboQuechuaQuestQuipus
QumoQwareR-TVRakutenRamosRaspberryRavoz
RaylandzRazerRCA TabletsReachReadboyRealmeRED
RedbeanRedfoxRedLineRedwayReederREGALRelNAT
RemdunRetroid PocketRevoRevomovilRicohRikomagicRIM
RinnoRitmixRitzvivaRivieraRivoRizzenROADMAX
RoadroverRoam CatROiKRokitRokuRombicaRoss&Moor
RoverRoverPadRoyoleRoyQueenRT ProjectRugGearRuggeTech
RuggexRuioRunboRupaRyteS-TELLS2Tel
SabaSafaricomSagemSagemcomSaietSAILFSalora
SamsungSamtechSamtronSaneiSankeySansuiSantin
SANYSanyoSavioSberSCBCSchneiderSchok
ScosmosSeatelSEBBESeekenSEEWOSEGSega
SEHMAXSeleclineSelengaSelevisionSelfixSEMP TCLSencor
SendoSenkatelSenseitSenwaSeuicSewooSFR
SGINShanlingSharpShift PhonesShivakiShtrikh-MShuttle
SicoSiemensSigmaSilelisSilent CircleSilva SchneiderSimbans
simferSimplySingtechSiragonSirin LabsSK BroadbandSKG
SKK MobileSkySkylineSkyStreamSkytechSkyworthSmadl
SmailoSmartSmart ElectronicSmart KasselSmartabSmartBookSMARTEC
SmartexSmartfrenSmartisanSmartySmooth MobileSmotreshkaSNAMI
SobieTechSodaSoftbankSoho StyleSolasSOLESOLO
SoloneSonimSONOSSonySony EricssonSOSHSoundmax
SoyesSparkSparxSPCSpectralinkSpectrumSpice
SprintSPURTSQOOLSSKYStarStarlightStarmobile
StarwayStarwindSTF MobileSTG TelecomSTKStonexStorex
StrawBerryStreamSTRONGStyloSuborSugarSumvision
SunmaxSunmiSunnySunstechSunVanSunvellSUNWIND
Super GeneralSuperBOXSuperSonicSuperTabSupraSupraimSurge
SuzukiSveonSwipeSWISSMOBILITYSwisstoneSwitelSyco
SYHSylvaniaSymphonySyroxSystem76T-MobileT96
TADAAMTAG TechTaiga SystemTakaraTaliusTamboTanix
TAUBETB TouchTCLTD SystemsTD TechTeachTouchTechnicolor
TechnikaTechniSatTechnopcTechnoTrendTechPadTechSmartTechstorm
TechwoodTeclastTecno MobileTecToyTEENOTeknosaTele2
TelefunkenTelegoTelenorTeliaTelitTelkomTelly
TelmaTeloSystemsTelpoTENPLUSTeracubeTescoTesla
TETCTetratabteXetThLThomsonThurayaTIANYU
TibutaTigersTime2TimoviTIMvisionTinaiTinmo
TiPhoneTiVoTJCTOKYOTolinoToneTOOGO
TookyTop HouseTopDeviceTOPDONTopelotekTopluxTOPSHOWS
TopsionTopwayTorexTorqueTOSCIDOToshibaTouch Plus
TouchmateTOXTPSTranspeedTrekStorTreviTriaPlay
TridentTrifoneTrioTronsmartTrueTrue SlimTsinghua Tongfang
TTECTTfoneTTK-TVTuCELTunisie TelecomTurboTurbo-X
TurboKidsTurboPadTürk TelekomTurkcellTVCTwinMOSTWM
TwoeTWZTymesU-MagicU.S. CellularUDUE
UGINEUgoosUhansUhappyUlefoneUmaxUMIDIGI
Unblock TechUnidenUnihertzUnimaxUniqcellUniscopeUnistrong
UnitechUNIWAUnknownUnnectoUnnion TechnologiesUNNOUnonu
UnowhyUOOGOUUrovoUTimeUTOKUTStarcomUZ Mobile
V-GenV-HOMEV-HOPEv-mobileVAIOVALEMVALTECH
VANGUARDVankyoVargoVastkingVAVAVCVDVD
VegaVektaVensoVenstarVenturerVEONVerico
VerizonVerneeVerssedVersusVertexVertuVerykool
VestaVestelVETASVexiaVGO TELViBoxVicturio
VIDAVideoconVideowebViewSonicVIIPOOVinaboxVinga
VinsocViosViperViproVirzoVision TouchVisual Land
VitelcomVityazViumeeVivaxVIVIMAGEVivoVIWA
VizioVizmoVK MobileVKworldVodacomVodafoneVOGA
VölfenVOLIAVOLKANOVollaVoltVoninoVontar
VoragoVorcomVorkeVormorVortexVotoVOX
VoxtelVoyoVsmartVsunVUCATIMESVue MicroVulcan
VVETIMEWAFWalkerWaltonWaltterWanmukangWANSA
WEWe. by Loewe.Web TVWebfleetWeChipWecoolWeelikeit
WeimeiWellcoMWELLINGTONWestern DigitalWestpointWexlerWhite Mobile
WieppoWigorWikoWileyfoxWindsWinkWinmax
WinnovoWinstarWintouchWiseasyWIWAWizarPosWizz
WolderWolfgangWolkiWONDERWonuWooWortmann
WoxterX-AGEX-BOX-MobileX-TIGIX-ViewX.Vision
X88X96X96QXcellXCOMXcruiserXElectron
XGEMXGIMIXgodyXiaoduXiaolajiaoXiaomiXion
XoloXoroXshitouXtouchXtratechXwaveXY Auto
YandexYarvikYASINYELLYOUTHYEPENYesYestel
YezzYoka TVYoozYotaYOTOPTYouinYouwei
YtoneYuYU FlyYuandaoYUHOYUMKEMYUNDOO
YunoYunSongYusunYxtelZ-KaiZaithZamolxe
ZatecZealotZeblazeZebraZeekerZeemiZen
ZenekZentalityZfinerZH&KZidooZIFROZigo
ZIKZinoxZioxZondaZonkoZoomZoomSmart
ZopoZTEZuumZyncZYQZyrex

[top]

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 (601):
BrowserBrowserBrowserBrowserBrowserBrowserBrowser
115 Browser18+ Privacy Browser1DM Browser1DM+ Browser2345 Browser360 Phone Browser360 Secure Browser
7654 Browser7StarABrowseAcoo BrowserAdBlock BrowserAdult BrowserAirfind Secure Browser
Aloha BrowserAloha Browser LiteALVAAmayaAmaze BrowserAmerigoAmiga Aweb
Amiga VoyagerAmigoAndroid BrowserAnka BrowserANT FrescoANTGalioAOL Desktop
AOL ExplorerAOL ShieldAOL Shield ProAplixAPN BrowserAppBrowzerAPUS Browser
ArcArctic FoxAroraArvinAsk.comAsus BrowserAtlas
AtomAtomic Web BrowserAvant BrowserAvast Secure BrowserAVG Secure BrowserAvira Secure BrowserAwoX
Azka BrowserB-LineBaidu BrowserBaidu SparkBangBangla BrowserBasic Web Browser
BasiliskBeaker BrowserBeamriseBelva BrowserBeonexBerry BrowserBeyond Private Browser
BF BrowserBitchute BrowserBiyubiBlack Lion BrowserBlackBerry BrowserBlackHawkBloket
Blue BrowserBluefyBonsaiBorealis NavigatorBraveBriskBardBroKeep Browser
BrowlserBrowsBitBrowseHereBrowser Hup ProBrowseXBrowspeed BrowserBrowzar
BunjallooBXE BrowserByffoxCake BrowserCaminoCatalystCatsxp
Cave BrowserCCleanerCentauryCG BrowserChanjetCloudCharonChedot
Cheetah BrowserCherry BrowserCheshireChim LacChowboChromeChrome Frame
Chrome MobileChrome Mobile iOSChrome WebviewChromePlusChromiumChromium GOSTClassilla
CliqzCM BrowserCM MiniCoastCoc CocColibriColom Browser
Columbus BrowserCometBirdComfort BrowserComodo DragonConkerorCoolBrowserCoolNovo
CornowserCOS BrowserCraving ExplorerCrazy BrowserCrow BrowserCrustaCunaguaro
CyberfoxCyBrowserDark BrowserDark Web BrowserdbrowserDebuggable BrowserDecentr
Deepnet Explorerdeg-deganDeledaoDelta BrowserDesi BrowserDeskBrowseDiigo Browser
DilloDoCoMoDolphinDolphin ZeroDoobleDoradoDot Browser
Dragon BrowserDUC BrowserDuckDuckGo Privacy BrowserEast BrowserEasy BrowserEcosiaEdge WebView
EinkBroElement BrowserElements BrowserElinksEolieEpicEspial TV Browser
EudoraWebEUI BrowserEvery BrowserExplore BrowsereZ BrowserFalkonFast Browser UC Lite
Fast ExplorerFaux BrowserFennecfGetFiery BrowserFirebirdFirefox
Firefox FocusFirefox KlarFirefox MobileFirefox Mobile iOSFirefox RealityFirefox RocketFireweb
Fireweb NavigatorFlash BrowserFlastFloat BrowserFlockFloorpFlow
Flow BrowserFluidFlyperlinkFreedom BrowserFreeUFrostFrost+
FulldiveG BrowserGaleonGener8Ghostery Privacy BrowserGinxDroid BrowserGlass Browser
GNOME WebGO BrowserGoBrowserGodzilla BrowserGOG GalaxyGoKuGoogle Earth
Google Earth ProGreenBrowserHarman BrowserHasBrowserHawk Quick BrowserHawk Turbo BrowserHeadless Chrome
HelioHexa Web BrowserHi Browserhola! BrowserHolla Web BrowserHotBrowserHotJava
HTC BrowserHuawei BrowserHuawei Browser MobileHUB BrowserIBrowseiBrowseriBrowser Mini
iCabiCab MobileIceCatIceDragonIceweaseliDesktop PC BrowserIE Browser Fast
IE MobileImpervious BrowserInBrowserIncognito BrowserIndian UC Mini BrowserInspect BrowserInsta Browser
Internet Browser SecureInternet ExplorerIntune Managed BrowserIridiumIronIron MobileIsivioo
IVVI BrowserJapan BrowserJasmineJavaFXJellyJig BrowserJig Browser Plus
JioSphereJUZI BrowserK-meleonK-NinjaK.BrowserKapikoKazehakase
Keepsafe BrowserKids Safe BrowserKindle BrowserKinzaKiwiKode BrowserKonqueror
KUTO Mini BrowserKyloLagatos BrowserLark BrowserLegan BrowserLenovo BrowserLexi Browser
LG BrowserLieBaoFastLightLightning BrowserLiloLinksLiri Browser
LogicUI TV BrowserLolifoxLotusLovense BrowserLT BrowserLuaKitLUJO TV Browser
LulumiLunascapeLunascape LiteLynket BrowserLynxMaelstromMandarin
MarsLab Web BrowserMAUI WAP BrowserMaxBrowserMaxthonMaxTube BrowsermCentMe Browser
Meizu BrowserMercuryMicroBMicrosoft EdgeMidoriMidori LiteMinimo
Mint BrowserMIUI BrowserMixerBox AIMmx BrowserMobicipMobile SafariMobile Silk
Mogok BrowserMonument BrowserMxNitroMypalNaked BrowserNaked Browser ProNavigateur Web
NCSA MosaicNetFrontNetFront LifeNetPositiveNetscapeNetSurfNextWord Browser
NFS BrowserNinetailsNokia BrowserNokia OSS BrowserNokia Ovi BrowserNOMone VR BrowserNorton Private Browser
Nova Video Downloader ProNox BrowserNTENT BrowserNuanti MetaNuviuObigoOcean Browser
OceanHeroOculus BrowserOdd BrowserOdinOdin BrowserOdyssey Web BrowserOff By One
Office BrowserOH BrowserOH Private BrowserOhHai BrowserOmniWebOnBrowser LiteONE Browser
Onion BrowserOpen BrowserOpen Browser 4UOpen Browser fast 5GOpen TV BrowserOpenFinOpenwave Mobile Browser
OperaOpera CryptoOpera DevicesOpera GXOpera MiniOpera Mini iOSOpera Mobile
Opera NeonOpera NextOpera TouchOppo BrowserOpus BrowserOrcaOrdissimo
OreganoOrigin In-Game OverlayOrigyn Web BrowserOrNET BrowserOtter BrowserPale MoonPalm Blazer
Palm PrePalm WebProPalmscapePawxyPeeps dBrowserPerfect BrowserPhantom Browser
Phantom.mePhoenixPhoenix BrowserPi BrowserPICO BrowserPirateBrowserPlayFree Browser
PlumaPocketBook BrowserPolarisPolarityPolyBrowserPolypanePrivacy Explorer Fast Safe
PrivacyWallPrivate Internet BrowserPronHub BrowserProxy BrowserPSI Secure BrowserPuffinPuffin Web Browser
Pure Lite BrowserPure Mini BrowserQazwebQiyuQJY TV BrowserQmamuQQ Browser
QQ Browser LiteQQ Browser MiniQtWebEngineQuarkQuick BrowserQuick Search TVQupZilla
QutebrowserQwant MobileRabbit Private BrowserRaise Fast BrowserRakuten BrowserRakuten Web SearchRaspbian Chromium
Realme BrowserRekonqReqwireless WebViewerRockMeltRoku BrowserSafariSafari Technology Preview
Safe Exam BrowserSailfish BrowserSalamWebSamsung BrowserSamsung Browser LiteSavannah BrowserSavySoda
SberBrowserSecure BrowserSecure Private BrowserSecureXSeewo BrowserSEMC-BrowserSeraphic Sraf
Seznam BrowserSFiveSharkee BrowserShiiraSidekickSilverMob USSimpleBrowser
SiteKioskSizzySkyeSkyfireSleipnirSlimBoatSlimjet
Smart BrowserSmart Lenovo BrowserSmart Search & Web BrowserSmoozSnowshoeSogou ExplorerSogou Mobile Browser
Sony Small BrowserSOTI SurfSoul BrowserSoundy BrowserSP BrowserSpectre BrowserSplash
Sputnik BrowserStampy BrowserStargonSTART Internet BrowserSteam In-Game OverlayStreamySunflower Browser
SunriseSuper Fast BrowserSuperBirdSuperFast BrowsersurfSurf BrowserSurfy Browser
Sushi BrowserSweet BrowserSwiftfoxSX BrowserT-Browsert-online.de BrowserT+Browser
Tao BrowsertarariaTenFourFoxTenta BrowserTesla BrowserThorTint Browser
Tizen BrowserToGateTor BrowserTrueLocation BrowserTUC Mini BrowserTungstenTV Bro
TweakStyleU BrowserUBrowserUC BrowserUC Browser HDUC Browser MiniUC Browser Turbo
Ui Browser MiniUme BrowserUR BrowserUzblVast BrowservBrowserVD Browser
Vegas BrowserVenus BrowserVertex SurfVewd BrowserViaViasat BrowserVibeMate
Vision Mobile BrowserVivaldiVivid Browser Minivivo BrowserVMware AirWatchVonkerorw3m
WaterfoxWave BrowserWaveboxWear Internet BrowserWeb Browser & ExplorerWeb ExplorerWebDiscover
Webian ShellWebPositiveWeTab BrowserWexondWhale BrowserWolvicWorld Browser
wOSBrowserWyzoX Browser LiteX-VPNxBrowserXBrowser MinixBrowser Pro Super Fast
XiinoXNX BrowserXooloo InternetxStandXtremeCastXvastYaani Browser
YAGIYahoo! Japan BrowserYandex BrowserYandex Browser LiteYo BrowserYolo BrowserYouBrowser
YouCareYuzu BrowserZetakeyZirco BrowserZordo BrowserZvu

[top]

2.1.0

1 month ago

2.0.18

4 months ago

2.0.17

7 months ago

2.0.15

10 months ago

2.0.16

9 months ago

2.0.14

12 months ago

2.0.13

1 year ago

2.0.11

1 year ago

2.0.12

1 year ago

2.0.9

1 year ago

2.0.8

2 years ago

2.0.10

1 year ago

2.0.7

2 years ago

2.0.3

2 years ago

2.0.5

2 years ago

2.0.4

2 years ago

2.0.6

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.4.4

2 years ago

1.4.3

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.3.11

3 years ago

1.3.10

3 years ago

1.3.9

3 years ago

1.3.8

3 years ago

1.3.7

3 years ago

1.3.6

3 years ago

1.3.5

3 years ago

1.3.4

3 years ago

1.3.3

3 years ago

1.3.2

3 years ago

1.3.1

3 years ago

1.3.0

3 years ago

1.2.9

4 years ago

1.2.8

4 years ago

1.2.7

4 years ago

1.2.6

4 years ago

1.2.5

4 years ago

1.2.4

4 years ago

1.2.3

4 years ago

1.2.2

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.9

4 years ago

1.1.8

5 years ago

1.1.7

5 years ago

1.1.6

5 years ago

1.1.5

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago