Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shopify/browser_sniffer

Properly detect what browser you are dealing with
https://github.com/shopify/browser_sniffer

Last synced: 3 months ago
JSON representation

Properly detect what browser you are dealing with

Awesome Lists containing this project

README

        

[![Build Status](https://github.com/Shopify/browser_sniffer/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/Shopify/browser_sniffer/actions/workflows/test.yml)
[![Gem Version](https://badge.fury.io/rb/browser_sniffer.png)](http://badge.fury.io/rb/browser_sniffer)

# BrowserSniffer

## Description

Parses user agent strings and boils it all down to a few simple classifications.

## Installation

Add this line to your application's Gemfile:

gem "browser_sniffer"

And then execute:

$ bundle install

Or install it yourself as:

$ git clone https://github.com/Shopify/browser_sniffer && cd browser_sniffer && bundle install && rake install

## Usage

```ruby
require "browser_sniffer"

client_info = BrowserSniffer.new(request.user_agent)
client_info.form_factor # => :tablet
client_info.browser # => :safari
client_info.major_browser_version # => 4
client_info.engine # => :webkit
client_info.major_engine_version # => 531
client_info.os # => :ios
client_info.os_version # => 3.2
```

## Contributing

Fork, branch & pull request.

## Licensing

Based off [UAParser.js](https://github.com/faisalman/ua-parser-js)

Copyright (c) 2013 Shopify
Copyright (c) 2012-2013 Faisalman
Dual licensed under GPLv2 & MIT