node package manager


Randomly generates User-Agent strings based on actual usage statistics from Wikimedia.

random-ua.js - A random User-Agent Generator

Randomly generates User-Agent strings based on actual browser market share and usage statistics.

The version numbers generated are sane, however, revisions are totally random and unlikely to exist in the wild.

I decided not to include language selection found in the PHP version and instead include all the languages in the ISO639-2 standard because it's atypical for sites to determine client locale based on the user-agent.

var random_ua = require('random-ua');
//Easy like Sunday morning 
//You can easily use random_ua to generate a random User-Agent for an HTTP request: 
var http = require('http');
    function (res) {
        if (res.statusCode === 200) {
            var body = [];
            res.on('data', function (chunk) {
            res.on('end', function () {
                body = body.join('');
        } else {
            console.log('Error retrieving page: ' + res.statusCode);

Please send your suggestions for improvements or updates.

This script is roughly based upon Luka Pusic's PHP script:

A refactored version in PHP is available on GitHub at:

MIT License