C++ implementation of ua-parser
C++ Makefile
Switch branches/tags
Nothing to show
Clone or download
Failed to load latest commit information.
uap-core @ 590f66f Update uap-core to latest Jun 11, 2018
.clang-format Apply clang-format to source Jan 29, 2018
.gitmodules Make uap-core submodule track latest Feb 16, 2018
.travis.yml Add email to Travis configuration Feb 8, 2018
LICENSE Add C++ port Jun 22, 2014
README.md README.md formatting tweaks Jul 6, 2018
UaParser.h Add noexcept specifiers Feb 8, 2018
UaParserTest.cpp Add multi-threading tests Jun 22, 2018


ua_parser C++ Library


To build the (static) library:

make uaparser_cpp

To build and run the tests:

make test

A recent (GCC >= 4.8 or Clang >= 3.9 both work) C++11 compiler is required.


  • boost_regex, yaml-cpp (0.5 API)
  • gtest (for testing)
  • uap-core, same directory level as uap-cpp. You can clone this repo with --recurse-submodules to get it.


Pull requests are welcome. Use clang-format -i *.cpp *.h to format the sources before sending the patch.


Alex Şuhan alex.suhan@gmail.com

Based on the D implementation by Shripad K and using agent data from BrowserScope.