Socket
Book a DemoInstallSign in
Socket

uainfer

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

uainfer

Infer UA from its UA String

latest
Source
npmnpm
Version
0.5.0
Version published
Weekly downloads
41
-30.51%
Maintainers
1
Weekly downloads
 
Created
Source

uainfer

NPM version Build Status

This is a simple JavaScript library (MIT License) to infer the user agent from its claimed User-Agent string. The objective of uainfer to provide a human-friendly answer to the inquiry "What browser am I using?".

In the context of a web browser, the most common way to obtain the User-Agent string is from the value of navigator.userAgent. In the context of an HTTP server, it can be retrieved from the User-Agent header field in the HTTP request.

Example usage with Node.js REPL (or try it on RunKit):

> uainfer = require('uainfer');
> ua = uainfer.analyze('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)'
> ua.toString()
'Internet Explorer 7 on Windows XP'

(To use this library in a front-end application, see this JSFiddle demo)

For browsers utilizing Chrome/Blink engine (Samsung Browser, Opera, Vivaldi, etc), the result can contain the corresponding equivalent version of Chrome:

> console.log(ua)
UserAgent {
  browser:
   { name: 'Vivaldi',
     version: 1.96,
     fullVersion: '1.96.1147.52',
     chromeFamily: { version: 65, fullVersion: '65.0.3325.183' } },
  os: { name: 'Windows', version: '10' } }

Non-goals:

  • Recognize every single web browsers and obscure user agents out there.
  • Deduce other information such as CPU type, device, form factor, etc.

Design choices:

  • For a better maintenance, avoid regular expressions.
  • Always expand its small but fairly extensive test suite.
  • Keep it tidy and lightweight (4 KB when minified).

This library is created and maintained by @AriyaHidayat.

FAQs

Package last updated on 27 Nov 2018

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