# User agent parser

> AI-ranked search results for `user agent parsers` on awesome-repositories.com — ordered by an LLM for relevance, best match first. 117 total matches; showing the top 11.

Explore on the web: https://awesome-repositories.com/q/user-agent-parsers

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [this search on awesome-repositories.com](https://awesome-repositories.com/q/user-agent-parsers).**

## Results

- [jenssegers/agent](https://awesome-repositories.com/repository/jenssegers-agent.md) (4,813 ⭐) — This project is a PHP user agent parser and mobile device detector. It analyzes HTTP user agent strings to identify the visitor's web browser, operating system, and device type.

The library provides a dedicated integration for the Laravel web framework. It distinguishes between mobile phones, tablets, and desktop computers while identifying web robots and the specific names of search engine crawlers.

The tool's capabilities include extracting preferred languages from request headers and verifying specific user agent properties. It uses regular expression pattern matching and static data mapp
- [faisalman/ua-parser-js](https://awesome-repositories.com/repository/faisalman-ua-parser-js.md) (10,140 ⭐) — ua-parser-js is a JavaScript library used to extract browser, operating system, and device information from raw user agent strings and client hints. It functions as a cross-platform tool that runs in both web browsers and Node.js server environments to identify web visitors.

The library integrates modern HTTP client hint headers to retrieve hardware and browser details with higher accuracy than standard string parsing. It also includes a specialized detector to identify automated AI agents, web crawlers, and bots to distinguish human traffic from automated scripts.

The project covers hardwar
- [hgoebl/mobile-detect.js](https://awesome-repositories.com/repository/hgoebl-mobile-detect-js.md) (4,137 ⭐) — mobile-detect.js is a JavaScript library for user agent detection. It analyzes browser request headers to identify hardware types, operating systems, and browser versions.

The library includes a client hardware profiler that assigns performance and capability grades to mobile devices based on their characteristics. It also provides tools to apply specific CSS classes to the document body based on detected hardware to enable responsive styling.

The project covers broad analysis capabilities, including the detection of mobile phones, tablets, and desktop computers. It extracts operating system
- [bowser-js/bowser](https://awesome-repositories.com/repository/bowser-js-bowser.md) (5,739 ⭐) — Bowser is a browser detection library that parses user-agent strings to identify a browser's name, version, rendering engine, and operating system. It functions as a user-agent parser and version constraint checker, extracting structured browser and platform details from raw user-agent strings without external dependencies.

The library distinguishes itself by integrating User-Agent Client Hints alongside traditional user-agent data for more accurate browser identification in modern environments. It provides cross-platform browser detection that works consistently across desktop and mobile ope
- [selwin/python-user-agents](https://awesome-repositories.com/repository/selwin-python-user-agents.md) (1,516 ⭐) — A Python library that provides an easy way to identify devices like mobile phones, tablets and their capabilities by parsing (browser) user agent strings.
- [tobie/ua-parser](https://awesome-repositories.com/repository/tobie-ua-parser.md) (1,968 ⭐) — A multi-language port of Browserscope's user agent parser.
- [rust-lang/regex](https://awesome-repositories.com/repository/rust-lang-regex.md) (3,978 ⭐) — This is a Rust regular expression library that provides a finite automata engine for searching and matching text patterns. It functions as a Unicode-compliant text scanner designed to guarantee linear time execution on all inputs to prevent catastrophic backtracking.

The engine supports both single and multi-pattern search capabilities, allowing it to scan a piece of text for multiple regular expressions simultaneously. It operates on both strings and raw byte slices to identify matching text segments.

The library covers text parsing, string validation, and pattern searching. It includes cap
- [fake-useragent/fake-useragent](https://awesome-repositories.com/repository/fake-useragent-fake-useragent.md) (4,058 ⭐) — fake-useragent is a tool for generating realistic browser identification strings and parsing existing agents into structured metadata. It functions as an HTTP user agent generator and a web scraping utility designed to rotate browser identities to mimic different devices during automated data collection.

The project provides capabilities for random user-agent generation and filtering based on specific browsers, operating systems, device platforms, or minimum version numbers. It also includes a user agent parser to extract detailed metadata, such as browser versions and device brands, from age
- [verbalexpressions/jsverbalexpressions](https://awesome-repositories.com/repository/verbalexpressions-jsverbalexpressions.md) (12,149 ⭐) — JSVerbalExpressions is a JavaScript regex builder and construction library that provides a domain-specific language for assembling complex regular expressions. It replaces the use of dense string literals with a programmatic interface and readable method chains.

The library allows for the creation of search patterns and validation rules through a fluent API. This approach enables the development of regular expressions that are maintainable and easy for other developers to understand.
- [matthewhudson/current-device](https://awesome-repositories.com/repository/matthewhudson-current-device.md) (3,934 ⭐) — current-device is a JavaScript device detection library used to identify operating systems, device categories, and screen orientations within a web browser environment. It serves as a browser environment detector and client-side mapper that translates browser metadata and user-agent strings into predefined device labels and hardware categories.

The library provides tools for executing specific JavaScript logic based on the detected mobile or desktop platform. It also functions as a conditional styling tool and document body class injector, applying descriptive HTML classes to enable device-sp
- [fingerprintjs/fingerprintjs](https://awesome-repositories.com/repository/fingerprintjs-fingerprintjs.md) (27,334 ⭐) — Fingerprint is a visitor identification and fraud detection platform that generates persistent, unique identifiers by analyzing browser and device attributes. By extracting technical signals from the client environment, it enables reliable user tracking across sessions without relying on traditional cookies.

The platform distinguishes itself through its focus on high-accuracy identification and security-first architecture. It employs edge-side proxying to bypass ad-blockers and privacy restrictions, ensuring consistent data collection. To maintain data integrity, it uses cryptographic payload
