bowser-js/bowser

a browser detector

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 40 minutes ago
Added to GitGenius on September 11th, 2026
Created on April 27th, 2011
Open Issues & Pull Requests: 84 (+0)
GitHub issues: Enabled
Number of forks: 487
Total Stargazers: 5,751 (+0)
Total Subscribers: 100 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 14
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,835 days
Stale 30+ days: 14
Stale 90+ days: 14

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • detection (4)
  • help needed (2)
  • feature (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Bowser is a browser detector library that identifies browser, platform, and rendering engine properties from user agent strings and Client Hints data.

The library solves the problem of determining what browser and operating system a user is running so developers can apply targeted logic, workarounds, or feature detection. It parses user agent strings to extract browser name, version, engine type, and OS information, and supports the modern User-Agent Client Hints API for improved accuracy in privacy-conscious browsers. The tool provides a filtering API that lets developers define rules to handle specific browsers or platforms differently, with OS and platform-specific rules taking precedence over standalone browser rules.

Bowser suits projects that need lightweight browser detection in both browser and Node.js environments. The library emphasizes a small footprint—the ES5 version is approximately 4.8 kilobytes gzipped—and allows importing only the parsers you need to avoid unnecessary code. It works as an ES module for tree-shaking in modern bundlers, as a CommonJS require, or as a plain script tag. The tool is available in multiple forms: a standard ES5 transpiled version, a bundled version with polyfills included, and source files for custom builds. Version 2.0 introduced breaking API changes, so projects on earlier versions should consult the legacy branch documentation.

The project receives issue and pull request responses within one to two weeks. Work in the issue tracker centers on detection improvements, requests for help, and feature requests, indicating active engagement with detection accuracy and user-reported gaps in browser or platform coverage.