https://github.com/ryleeharrison/user-agent-smith
A super fast utility designed to generate random user agent strings for various browsers and operating systems.
https://github.com/ryleeharrison/user-agent-smith
Last synced: 27 days ago
JSON representation
A super fast utility designed to generate random user agent strings for various browsers and operating systems.
- Host: GitHub
- URL: https://github.com/ryleeharrison/user-agent-smith
- Owner: RyLeeHarrison
- License: mit
- Created: 2025-03-26T03:08:46.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-03-26T03:39:31.000Z (about 1 month ago)
- Last Synced: 2025-03-26T04:27:50.028Z (about 1 month ago)
- Language: JavaScript
- Size: 9.77 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# User Agent Smith
The `UserAgentSmith` class is a JavaScript utility designed to generate random user agent strings for various browsers and operating systems. This can be useful for testing web applications, simulating browser requests, or web scraping scenarios where diverse user agents are needed.

## Install
To install the `user-agent-smith` package, use one of the following commands:
```bash
npm install user-agent-smith
```Or via Yarn:
```bash
yarn add user-agent-smith
```**Note:** The Yarn command uses `yarn add` instead of `yarn install` because `yarn add` is the standard way to add a new package to your project dependencies, while `yarn install` is typically used to install all dependencies listed in `package.json`.
## Usage
Here’s how to import and instantiate the `UserAgentSmith` class:
```javascript
import UserAgentSmith from 'user-agent-smith';const generator = new UserAgentSmith();
```You can then call its methods to generate user agent strings. Run your script with:
```bash
node example.mjs
```## Methods
### `generate()`
Generates a random user agent string with a bias towards popular browsers (e.g., Chrome, Firefox).
#### Example
```javascript
console.log(generator.generate());
```#### Sample Output
```
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6789.12 Safari/537.36
```### `generateMobile()`
Generates a random mobile user agent string (e.g., Chrome on Android, Safari on iOS).
#### Example
```javascript
console.log(generator.generateMobile());
```#### Sample Output
```
Mozilla/5.0 (Linux; Android 13.0; OnePlus 13) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.3456.78 Mobile Safari/537.36
```### `generateMultiple(count)`
Generates a specified number of unique user agent strings.
#### Parameters
- `count`: The number of unique user agents to generate (integer).#### Example
```javascript
console.log(generator.generateMultiple(3));
```#### Sample Output
```
[
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.5678.90 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 12_0; rv:127.0) Gecko/20230101 Firefox/127.0",
"Mozilla/5.0 (Windows NT 11.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.567.89"
]
```## Full Usage Example
Here’s a complete example demonstrating how to use the `UserAgentSmith` class in a modern Node.js script with MJS syntax:
```javascript
// example.mjs
import UserAgentSmith from 'user-agent-smith';const generator = new UserAgentSmith();
// Generate a single random user agent
console.log("Random User Agent:");
console.log(generator.generate());// Generate a single mobile user agent
console.log("\nRandom Mobile User Agent:");
console.log(generator.generateMobile());// Generate multiple unique user agents
console.log("\nMultiple User Agents:");
console.log(generator.generateMultiple(3));
```To run this script:
```bash
node example.mjs
```### Sample Output
```
Random User Agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6789.12 Safari/537.36Random Mobile User Agent:
Mozilla/5.0 (Linux; Android 13.0; OnePlus 13) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.3456.78 Mobile Safari/537.36Multiple User Agents:
[
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.5678.90 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 12_0; rv:127.0) Gecko/20230101 Firefox/127.0",
"Mozilla/5.0 (Windows NT 11.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.567.89"
]
```