
Research
Security News
The Growing Risk of Malicious Browser Extensions
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
user-device-type
Advanced tools
**Browser, OS, and device detection based on the available user agent string. Can be used both in a browser (also as a standalone script) or in a server environment.**
Browser, OS, and device detection based on the available user agent string. Can be used both in a browser (also as a standalone script) or in a server environment.
It's very rarely a good idea to use user agent sniffing. You can almost always find a better, more broadly compatible way to solve your problem! MDN: Browser detection using the user agent
Note: user-device-type is written in Javascript and includes all the necessary typings, making it usable in both JavaScript and TypeScript projects.
In cases where some device-specific issues cannot be fixed uniformly across devices, we may need to perform device detection. For example, certain features might be disabled or enabled based on whether the user is on a mobile, tablet, desktop, wearable, or TV device.
To install the library use npm:
npm install user-device-type
const { getDeviceType } = require("user-device-type");
const userAgent = "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25";
const deviceType = getDeviceType(userAgent);
console.log('Device type:', deviceType); // Outputs: 'tablet'
import { getDeviceType } from "user-device-type";
const userAgent = navigator.userAgent;
const deviceType = getDeviceType(userAgent);
console.log('Device type:', deviceType); // Outputs: 'mobile', 'tablet', 'desktop', 'wearable', or 'tv'
getDeviceType(userAgent: string): string: Function that expects a user agent string as an argument and returns the device type ('mobile', 'tablet', 'desktop', 'wearable', or 'tv').
Some libraries provide only browser information and not the device type. user-device-type offers a simple and symmetric API, does not depend on other libraries, is tiny, fast, and easily extensible. Additionally, it can be used in both browser and server environments.
Copyright (c) 2024 mendmania
Licensed under the MIT license.
FAQs
**Browser, OS, and device detection based on the available user agent string. Can be used both in a browser (also as a standalone script) or in a server environment.**
We found that user-device-type demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Research
Security News
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
Research
Security News
An in-depth analysis of credential stealers, crypto drainers, cryptojackers, and clipboard hijackers abusing open source package registries to compromise Web3 development environments.
Security News
pnpm 10.12.1 introduces a global virtual store for faster installs and new options for managing dependencies with version catalogs.