mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 07:58:45 +03:00
274 lines
10 KiB
Markdown
274 lines
10 KiB
Markdown
[](https://uaparser.dev)
|
|
[](https://uaparser.dev)
|
|
[](https://uaparser.dev)
|
|
[](https://uaparser.dev)
|
|
|
|
<p align="center">
|
|
<a href="https://www.npmjs.com/package/ua-parser-js"><img src="https://img.shields.io/npm/dw/ua-parser-js?color=red&logo=npm&label=NPM%20DOWNLOADS&style=for-the-badge"></a>
|
|
<a href="https://www.jsdelivr.com/package/npm/ua-parser-js"><img src="https://img.shields.io/jsdelivr/gh/hw/faisalman/ua-parser-js?logo=jsdelivr&style=for-the-badge"></a>
|
|
<a href="https://github.com/faisalman/ua-parser-js"><img src="https://img.shields.io/github/stars/faisalman/ua-parser-js?color=yellow&logo=github&style=for-the-badge"></a>
|
|
<a href="https://bundlephobia.com/package/ua-parser-js@1.0.35"><img src="https://img.shields.io/bundlephobia/minzip/ua-parser-js?logo=hackthebox&logoColor=white&style=for-the-badge"/></a>
|
|
<a href="https://github.com/faisalman/ua-parser-js/graphs/contributors"><img src="https://img.shields.io/github/contributors/faisalman/ua-parser-js?color=purple&logo=githubsponsors&style=for-the-badge"></a>
|
|
<a href="https://www.npmjs.com/package/ua-parser-js"><img src="https://img.shields.io/npm/v/ua-parser-js.svg?logo=npm&color=red&style=for-the-badge"></a>
|
|
<a href="https://cdnjs.com/libraries/UAParser.js"><img src="https://img.shields.io/cdnjs/v/UAParser.js.svg?color=orange&style=for-the-badge"></a>
|
|
<img src="https://img.shields.io/ossf-scorecard/github.com/faisalman/ua-parser-js?label=openssf%20scorecard&style=for-the-badge">
|
|
<a target="_blank" href="https://discord.gg/stt86vmr"><img alt="Discord invite" src="https://dcbadge.limes.pink/api/server/https://discord.gg/stt86vmr"></a>
|
|
</p>
|
|
|
|
# UAParser.js
|
|
|
|
The most comprehensive, compact, and up-to-date JavaScript library to detect user's browser, OS, CPU, and device type/model. Also detect bots, apps, and more. Runs seamlessly in the browser (client-side) or Node.js (server-side).
|
|
|
|
# Demo
|
|
|
|
* Live demo: https://uaparser.dev
|
|
|
|
|
|
# Documentation
|
|
|
|
* `version 1.x` : https://github.com/faisalman/ua-parser-js/tree/1.0.x#documentation
|
|
* `version 2.x` : https://docs.uaparser.dev
|
|
|
|
Before upgrading from `v0.7` / `v1.0`, please read [CHANGELOG](CHANGELOG.md) to
|
|
see what's new & breaking.
|
|
|
|
# Package & Pricing
|
|
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th></th>
|
|
<th colspan="2">Open-Source Editions</th>
|
|
<th colspan="3">PRO / Commercial Editions</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>License options</td>
|
|
<td>MIT (v1.x)</td>
|
|
<td>AGPL (v2.x)</td>
|
|
<td>PRO Personal</td>
|
|
<td>PRO Business</td>
|
|
<td>PRO Enterprise</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Browser detection</td>
|
|
<td><a href="#demo" title="Basic detection">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>CPU detection</td>
|
|
<td><a href="#demo" title="Basic detection">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Device detection</td>
|
|
<td><a href="#demo" title="Basic detection">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Engine detection</td>
|
|
<td><a href="#demo" title="Basic detection">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>OS detection</td>
|
|
<td><a href="#demo" title="Basic detection">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Bot detection</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>AI Bot detection</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Extras (Apps, Libs, Emails, Media Players, etc) detection</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Enhanced detection result</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Client Hints support</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>CommonJS support</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>ES modules support</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeScript declarations</td>
|
|
<td><a href="#demo" title="Community version">⚠️</a></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>npm module available</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Direct downloads available</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Allows commercial usage</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Permissive (non-copyleft) license</td>
|
|
<td>✅</td>
|
|
<td><strong title="Copyleft license">❌</strong></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>No open-source obligations</td>
|
|
<td>✅</td>
|
|
<td><strong title="Copyleft license">❌</strong></td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Unlimited end-products</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td><strong title="1 end-product per license">❌</strong></td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Unlimited deployments</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td><strong title="1 TLD or deliverable per license">❌</strong></td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1-year product support</td>
|
|
<td>❌</td>
|
|
<td>❌</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Lifetime updates</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
<td>✅</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Price</td>
|
|
<td><strong title="Pay as you want">FREE<sup>*</sup> (<a target="_blank" href="https://raw.githubusercontent.com/faisalman/ua-parser-js/1.0.x/license.md">License</a>)</strong></td>
|
|
<td><strong title="Pay as you want">FREE<sup>*</sup> (<a target="_blank" href="https://raw.githubusercontent.com/faisalman/ua-parser-js/master/LICENSE.md">License</a>)</strong></td>
|
|
<td><strong title="$14 (one-time fee)">$14 (<a target="_blank" href="https://raw.githubusercontent.com/faisalman/ua-parser-js/pro-personal/LICENSE.md">License</a>)</strong></td>
|
|
<td><strong title="$29 (one-time fee)">$29 (<a target="_blank" href="https://raw.githubusercontent.com/faisalman/ua-parser-js/pro-business/LICENSE.md">License</a>)</strong></td>
|
|
<td><strong title="$599 (one-time fee)">$599 (<a target="_blank" href="https://raw.githubusercontent.com/faisalman/ua-parser-js/pro-enterprise/LICENSE.md">License</a>)</strong></td>
|
|
</tr>
|
|
</tbody>
|
|
<tfoot>
|
|
<tr>
|
|
<th align="right" colspan="6">
|
|
<h3><a target="_blank" href="https://store.faisalman.com/checkout/buy/e236ea87-9b2b-400e-9683-24367f731b35"> GET THE PRO PACKAGES 📥</a></h3>
|
|
</th>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
|
|
# Development
|
|
|
|
## Contributors
|
|
|
|
Please read [CONTRIBUTING](CONTRIBUTING.md) guide first for the instruction details.
|
|
|
|
<a href="https://github.com/faisalman/ua-parser-js/graphs/contributors">
|
|
<img src="https://contrib.rocks/image?repo=faisalman/ua-parser-js" />
|
|
</a>
|
|
|
|
Made with [contributors-img](https://contrib.rocks).
|
|
|
|
## Backers & Sponsors
|
|
|
|
Support the **open-source editions** of UAParser.js through one of the following options:
|
|
|
|
[](https://opencollective.com/ua-parser-js)
|
|
[](https://github.com/sponsors/faisalman)
|
|
[](https://paypal.me/faisalman)
|
|
[](https://store.faisalman.com/buy/3d71f2f3-cf4d-473c-892a-9d4497c890be)
|
|
|
|
<a href="https://opencollective.com/ua-parser-js"><img src="https://opencollective.com/ua-parser-js/organizations.svg?avatarHeight=64"></a>
|
|
<a href="https://opencollective.com/ua-parser-js"><img src="https://opencollective.com/ua-parser-js/individuals.svg?avatarHeight=64"></a> |