brave-real-browser 1.5.101 → 1.5.105

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/FEATURES.md ADDED
@@ -0,0 +1,265 @@
1
+ # šŸŽÆ Brave-Real-Browser - Complete Features List
2
+ ## ą¤øą¤­ą„€ ą¤øą„ą¤µą¤æą¤§ą¤¾ą¤ą¤‚ (All Features)
3
+
4
+ ---
5
+
6
+ ## āœ… Core Features (ą¤®ą„ą¤–ą„ą¤Æ ą¤øą„ą¤µą¤æą¤§ą¤¾ą¤ą¤‚)
7
+
8
+ ### 1. šŸ¤– Anti-Detection Features
9
+ - āœ… Cloudflare bypass support
10
+ - āœ… Bot detection prevention
11
+ - āœ… Puppeteer fingerprint hiding
12
+ - āœ… Rebrowser patches integration
13
+ - āœ… Runtime.enable fix
14
+ - āœ… Mouse movement patching (screenX/screenY fix)
15
+ - āœ… Ghost cursor integration for realistic mouse movements
16
+ - āœ… Real browser behavior simulation
17
+
18
+ ### 2. šŸ”„ Automatic Dependency Management
19
+ - āœ… **Auto-update on npm install** (NEW! - ą¤œą„‹ą¤”ą¤¼ दिया गया)
20
+ - āœ… **Pre-install hook with dependency check**
21
+ - āœ… **Post-install confirmation message**
22
+ - āœ… Weekly Dependabot updates
23
+ - āœ… Weekend Renovate Bot updates
24
+ - āœ… GitHub Actions workflow with auto-updates
25
+ - āœ… Manual update scripts (`update-deps`, `upgrade-all`)
26
+ - āœ… Outdated package checker (`check-updates`)
27
+ - āœ… Environment variable control (SKIP_AUTO_UPDATE)
28
+ - āœ… CI/CD friendly auto-updates
29
+
30
+ ### 3. šŸ”§ Browser Configuration
31
+ - āœ… Headless mode support (false/true/"new"/"shell")
32
+ - āœ… Custom Chrome/Brave flags support
33
+ - āœ… Custom Chrome path configuration
34
+ - āœ… User data directory (userDataDir) support
35
+ - āœ… Proxy configuration (host, port, username, password)
36
+ - āœ… Viewport customization
37
+ - āœ… Xvfb support for Linux headless environment
38
+ - āœ… Ignore all flags option
39
+ - āœ… Connect options customization
40
+
41
+ ### 4. šŸŽ­ CAPTCHA Handling
42
+ - āœ… Cloudflare Turnstile auto-solve
43
+ - āœ… reCAPTCHA support
44
+ - āœ… hCaptcha support
45
+ - āœ… Automatic CAPTCHA clicking
46
+
47
+ ### 5. šŸ“¦ Module System Support
48
+ - āœ… CommonJS (require) support
49
+ - āœ… ES Modules (import) support
50
+ - āœ… TypeScript definitions (typings.d.ts)
51
+ - āœ… Dual package exports
52
+ - āœ… Test files for both module systems
53
+
54
+ ### 6. šŸ”Œ Plugin System
55
+ - āœ… Puppeteer-extra plugin support
56
+ - āœ… Plugin loading during initialization
57
+ - āœ… Custom plugin integration
58
+ - āœ… Plugin compatibility testing
59
+
60
+ ### 7. šŸ–±ļø Mouse & Interaction
61
+ - āœ… Ghost cursor for realistic movements
62
+ - āœ… `page.realClick()` method
63
+ - āœ… `page.realCursor` access
64
+ - āœ… Natural mouse movement simulation
65
+ - āœ… Click and wait for navigation
66
+
67
+ ### 8. 🐳 Docker Support
68
+ - āœ… Dockerfile included
69
+ - āœ… Ubuntu server tested
70
+ - āœ… Xvfb integration in containers
71
+ - āœ… Easy deployment
72
+
73
+ ### 9. šŸ“ Documentation
74
+ - āœ… Comprehensive README.md
75
+ - āœ… Installation instructions
76
+ - āœ… Usage examples
77
+ - āœ… Configuration guide
78
+ - āœ… FAQ section
79
+ - āœ… Plugin installation guide
80
+ - āœ… Docker guide
81
+ - āœ… **Auto-update documentation** (NEW!)
82
+ - āœ… **Features checklist** (NEW!)
83
+
84
+ ### 10. šŸš€ CI/CD Integration
85
+ - āœ… GitHub Actions workflow
86
+ - āœ… Automatic publishing to NPM
87
+ - āœ… Version auto-increment (patch)
88
+ - āœ… Git tagging
89
+ - āœ… GitHub Release creation
90
+ - āœ… Dependency updates in workflow
91
+ - āœ… Skip CI prevention (`[skip ci]`)
92
+ - āœ… Manual workflow dispatch
93
+ - āœ… Duplicate version check
94
+ - āœ… Job status summary
95
+
96
+ ### 11. šŸ” Security Features
97
+ - āœ… Dependabot security alerts
98
+ - āœ… Automated security updates
99
+ - āœ… Vulnerability scanning
100
+ - āœ… Weekly security checks
101
+
102
+ ### 12. šŸŽØ Developer Experience
103
+ - āœ… ESM test suite
104
+ - āœ… CJS test suite
105
+ - āœ… NPM scripts for common tasks
106
+ - āœ… Helpful console messages
107
+ - āœ… Error handling
108
+ - āœ… Debug mode support
109
+
110
+ ---
111
+
112
+ ## šŸ†• Recently Added Features (हाल ą¤¹ą„€ ą¤®ą„‡ą¤‚ ą¤œą„‹ą¤”ą¤¼ą„€ ą¤—ą¤ˆ ą¤øą„ą¤µą¤æą¤§ą¤¾ą¤ą¤‚)
113
+
114
+ ### ✨ Auto-Update System (Latest!)
115
+ - āœ… **Automatic dependency updates on every `npm install`**
116
+ - āœ… **Smart detection of outdated packages**
117
+ - āœ… **Selective update (only core dependencies)**
118
+ - āœ… **Environment variable control**
119
+ - āœ… **Recursion prevention**
120
+ - āœ… **User-friendly console output**
121
+ - āœ… **Error handling with fallback**
122
+ - āœ… **Version display after update**
123
+ - āœ… **Script: `scripts/auto-update.js`**
124
+
125
+ ### šŸ“š Enhanced Documentation
126
+ - āœ… **Auto-update feature section in README**
127
+ - āœ… **Complete features list (FEATURES.md)**
128
+ - āœ… **Hindi + English documentation**
129
+ - āœ… **Usage examples with environment variables**
130
+
131
+ ---
132
+
133
+ ## šŸ”„ Dependency Update Mechanisms (ą¤øą¤­ą„€ ą¤¤ą¤°ą„€ą¤•ą„‡)
134
+
135
+ ### 1. Automatic (ą¤øą„ą¤µą¤šą¤¾ą¤²ą¤æą¤¤)
136
+ 1. **npm install** - हर बार auto-update (NEW!)
137
+ 2. **GitHub Actions** - हर push पर
138
+ 3. **Dependabot** - हर Monday ą¤•ą„‹
139
+ 4. **Renovate Bot** - हर weekend ą¤•ą„‹
140
+
141
+ ### 2. Manual (ą¤®ą„ˆą¤Øą„ą¤…ą¤²)
142
+ 1. **`npm run update-deps`** - ą¤øą¤­ą„€ dependencies update
143
+ 2. **`npm run upgrade-all`** - update + confirmation message
144
+ 3. **`npm run check-updates`** - outdated packages ą¤¦ą„‡ą¤–ą„‡ą¤‚
145
+
146
+ ### 3. Control Options (ą¤Øą¤æą¤Æą¤‚ą¤¤ą„ą¤°ą¤£ ą¤µą¤æą¤•ą¤²ą„ą¤Ŗ)
147
+ ```bash
148
+ # Auto-update disable ą¤•ą¤°ą„‡ą¤‚
149
+ SKIP_AUTO_UPDATE=true npm install
150
+
151
+ # Auto-update enable ą¤•ą¤°ą„‡ą¤‚ (default)
152
+ npm install
153
+
154
+ # Check ą¤•ą¤°ą„‡ą¤‚ बिना update ą¤•ą„‡
155
+ npm run check-updates
156
+ ```
157
+
158
+ ---
159
+
160
+ ## šŸ“Š Feature Comparison
161
+
162
+ | Feature | Status | Auto-Update | Manual Update | CI/CD |
163
+ |---------|--------|-------------|---------------|-------|
164
+ | npm install | āœ… Yes | āœ… Yes (NEW!) | āœ… Yes | āœ… Yes |
165
+ | GitHub Actions | āœ… Yes | āœ… Yes | - | āœ… Yes |
166
+ | Dependabot | āœ… Yes | āœ… Yes | - | āœ… Yes |
167
+ | Renovate Bot | āœ… Yes | āœ… Yes | - | āœ… Yes |
168
+ | Manual Scripts | āœ… Yes | - | āœ… Yes | āœ… Yes |
169
+
170
+ ---
171
+
172
+ ## šŸŽÆ Complete Feature Coverage (ą¤øą¤®ą„ą¤Ŗą„‚ą¤°ą„ą¤£ ą¤øą„ą¤µą¤æą¤§ą¤¾ą¤ą¤‚)
173
+
174
+ ### āœ… Installation & Setup
175
+ - [x] NPM package installation
176
+ - [x] Linux xvfb installation guide
177
+ - [x] Windows compatibility
178
+ - [x] MacOS compatibility
179
+ - [x] Docker installation
180
+ - [x] Auto-dependency updates
181
+
182
+ ### āœ… Browser Control
183
+ - [x] Launch Chrome/Brave
184
+ - [x] Connect to existing browser
185
+ - [x] Headless mode
186
+ - [x] Custom flags
187
+ - [x] Proxy support
188
+ - [x] User profiles
189
+
190
+ ### āœ… Anti-Detection
191
+ - [x] Cloudflare bypass
192
+ - [x] Bot detection prevention
193
+ - [x] Fingerprint hiding
194
+ - [x] Natural behavior
195
+ - [x] Mouse movement realism
196
+
197
+ ### āœ… Automation
198
+ - [x] Page navigation
199
+ - [x] Click interactions
200
+ - [x] Form filling
201
+ - [x] Screenshot capture
202
+ - [x] PDF generation
203
+ - [x] Network interception
204
+
205
+ ### āœ… CAPTCHA
206
+ - [x] Turnstile auto-solve
207
+ - [x] reCAPTCHA support
208
+ - [x] hCaptcha support
209
+ - [x] Custom CAPTCHA handlers
210
+
211
+ ### āœ… Development
212
+ - [x] TypeScript support
213
+ - [x] ESM/CJS support
214
+ - [x] Plugin system
215
+ - [x] Test suites
216
+ - [x] Debug mode
217
+
218
+ ### āœ… Maintenance
219
+ - [x] Auto-updates
220
+ - [x] Security patches
221
+ - [x] Version management
222
+ - [x] CI/CD pipeline
223
+ - [x] Release automation
224
+
225
+ ### āœ… Documentation
226
+ - [x] README
227
+ - [x] Examples
228
+ - [x] FAQ
229
+ - [x] API docs
230
+ - [x] Features list
231
+ - [x] Hindi support
232
+
233
+ ---
234
+
235
+ ## šŸŽ‰ Summary (सारांश)
236
+
237
+ **Total Features Implemented: 50+ āœ…**
238
+
239
+ ### ą¤®ą„ą¤–ą„ą¤Æ ą¤¬ą¤¾ą¤¤ą„‡ą¤‚:
240
+ 1. āœ… **ą¤øą¤­ą„€ dependencies अब हर `npm install` पर automatically latest version ą¤®ą„‡ą¤‚ update ą¤¹ą„‹ą¤‚ą¤—ą„€**
241
+ 2. āœ… **GitHub Actions workflow ą¤®ą„‡ą¤‚ ą¤­ą„€ auto-update ą¤¹ą„ˆ**
242
+ 3. āœ… **Dependabot और Renovate Bot ą¤­ą„€ काम कर ą¤°ą¤¹ą„‡ ą¤¹ą„ˆą¤‚**
243
+ 4. āœ… **Environment variable ą¤øą„‡ control कर ą¤øą¤•ą¤¤ą„‡ ą¤¹ą„ˆą¤‚**
244
+ 5. āœ… **ą¤øą¤­ą„€ ą¤œą¤°ą„‚ą¤°ą„€ features add ą¤¹ą„‹ ą¤šą„ą¤•ą„‡ ą¤¹ą„ˆą¤‚**
245
+
246
+ ### Key Points:
247
+ 1. āœ… **All dependencies will automatically update to latest version on every `npm install`**
248
+ 2. āœ… **GitHub Actions workflow also has auto-update**
249
+ 3. āœ… **Dependabot and Renovate Bot are also working**
250
+ 4. āœ… **Can be controlled via environment variable**
251
+ 5. āœ… **All essential features have been added**
252
+
253
+ ---
254
+
255
+ ## šŸ“ž Need Help?
256
+
257
+ - šŸ“– Read README.md for usage guide
258
+ - šŸ› Report issues on GitHub
259
+ - šŸ’” Check FAQ section
260
+ - šŸ”§ Use `npm run check-updates` to verify dependencies
261
+
262
+ ---
263
+
264
+ **Last Updated:** October 4, 2025
265
+ **Version:** 1.5.101+
package/README.md CHANGED
@@ -47,6 +47,38 @@ if you are using linux:
47
47
  sudo apt-get install xvfb
48
48
  ```
49
49
 
50
+ ### šŸš€ Auto-Update Feature
51
+
52
+ This package **automatically updates all dependencies to their latest versions** whenever you run `npm install`. This ensures you always have the most recent bug fixes and security patches.
53
+
54
+ **How it works:**
55
+ - āœ… Automatically checks for outdated dependencies on every `npm install`
56
+ - āœ… Updates only the core dependencies (brave-real-launcher, brave-real-puppeteer-core, etc.)
57
+ - āœ… Works in CI/CD environments (GitHub Actions, etc.)
58
+ - āœ… Can be disabled if needed
59
+
60
+ **To disable auto-update:**
61
+ ```bash
62
+ # Temporarily disable for one install
63
+ SKIP_AUTO_UPDATE=true npm install
64
+
65
+ # Or set environment variable
66
+ export SKIP_AUTO_UPDATE=true
67
+ npm install
68
+ ```
69
+
70
+ **Manual update commands:**
71
+ ```bash
72
+ # Check for outdated dependencies
73
+ npm run check-updates
74
+
75
+ # Update all dependencies manually
76
+ npm run update-deps
77
+
78
+ # Or use the convenient command
79
+ npm run upgrade-all
80
+ ```
81
+
50
82
  ## Include
51
83
 
52
84
  ### CommonJS
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brave-real-browser",
3
- "version": "1.5.101",
3
+ "version": "1.5.105",
4
4
  "description": "This package is designed to bypass puppeteer's bot-detecting captchas such as Cloudflare. It acts like a real browser and can be managed with puppeteer.",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/esm/index.mjs",
@@ -16,8 +16,8 @@
16
16
  "esm_test": "node ./test/esm/test.js",
17
17
  "cjs_test": "node ./test/cjs/test.js",
18
18
  "update-deps": "npm install brave-real-launcher@latest brave-real-puppeteer-core@latest ghost-cursor@latest puppeteer-extra@latest tree-kill@latest xvfb@latest && npm list --depth=0",
19
- "preinstall": "echo \"šŸ” Checking for dependency updates...\"",
20
- "postinstall": "echo \"āœ… Installation complete! Run 'npm run update-deps' to update to latest versions\"",
19
+ "preinstall": "node scripts/auto-update.js",
20
+ "postinstall": "echo \"āœ… Installation complete with latest dependencies!\"",
21
21
  "check-updates": "npm outdated || true",
22
22
  "upgrade-all": "npm run update-deps && echo \"šŸ“¦ All dependencies updated to latest versions!\""
23
23
  },
@@ -43,8 +43,8 @@
43
43
  "author": "zfc-software",
44
44
  "license": "ISC",
45
45
  "dependencies": {
46
- "brave-real-launcher": "^1.2.15",
47
- "brave-real-puppeteer-core": "^24.23.0-patch.1",
46
+ "brave-real-launcher": "^1.2.28",
47
+ "brave-real-puppeteer-core": "^24.33.0-patch.1",
48
48
  "ghost-cursor": "^1.4.1",
49
49
  "puppeteer-extra": "^3.3.6",
50
50
  "tree-kill": "^1.2.2",
@@ -0,0 +1,119 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Auto-Update Dependencies Script
5
+ *
6
+ * यह script npm install ą¤•ą„‡ ą¤¦ą„Œą¤°ą¤¾ą¤Ø automatically चलता ą¤¹ą„ˆ और
7
+ * ą¤øą¤­ą„€ dependencies ą¤•ą„‹ latest version ą¤®ą„‡ą¤‚ update करता ą¤¹ą„ˆ
8
+ *
9
+ * Environment Variables:
10
+ * - SKIP_AUTO_UPDATE=true : Auto-update ą¤•ą„‹ disable ą¤•ą¤°ą¤Øą„‡ ą¤•ą„‡ ą¤²ą¤æą¤
11
+ * - AUTO_UPDATE=false : Alternative way to disable
12
+ * - CI=true : CI environment ą¤®ą„‡ą¤‚ automatically enable
13
+ */
14
+
15
+ const { execSync } = require('child_process');
16
+ const fs = require('fs');
17
+ const path = require('path');
18
+
19
+ // Configuration
20
+ const DEPENDENCIES = [
21
+ 'brave-real-launcher',
22
+ 'brave-real-puppeteer-core',
23
+ 'ghost-cursor',
24
+ 'puppeteer-extra',
25
+ 'tree-kill',
26
+ 'xvfb'
27
+ ];
28
+
29
+ // Check if auto-update should be skipped
30
+ const shouldSkipUpdate = () => {
31
+ // Skip ą¤•ą¤°ą„‡ą¤‚ अगर environment variable set ą¤¹ą„ˆ
32
+ if (process.env.SKIP_AUTO_UPDATE === 'true' || process.env.AUTO_UPDATE === 'false') {
33
+ console.log('ā­ļø Auto-update skipped (SKIP_AUTO_UPDATE=true)');
34
+ return true;
35
+ }
36
+
37
+ // Skip ą¤•ą¤°ą„‡ą¤‚ अगर यह khud ą¤•ą„€ installation ą¤¹ą„ˆ (avoid recursion)
38
+ if (process.env.npm_lifecycle_event === 'preinstall' && process.env.npm_package_name === 'brave-real-browser') {
39
+ // Check if we're installing from npm registry
40
+ const isRegistryInstall = process.env.npm_config_argv &&
41
+ process.env.npm_config_argv.includes('install') &&
42
+ !fs.existsSync(path.join(__dirname, '..', 'package.json'));
43
+
44
+ if (isRegistryInstall) {
45
+ console.log('šŸ“¦ Installing from npm registry...');
46
+ return true;
47
+ }
48
+ }
49
+
50
+ return false;
51
+ };
52
+
53
+ // Main update function
54
+ const updateDependencies = () => {
55
+ try {
56
+ console.log('\nšŸ”„ Brave-Real-Browser: Checking for dependency updates...\n');
57
+
58
+ // Check for outdated packages
59
+ let outdated = [];
60
+ try {
61
+ const result = execSync('npm outdated --json', {
62
+ encoding: 'utf8',
63
+ stdio: ['pipe', 'pipe', 'ignore'] // Suppress stderr
64
+ });
65
+ outdated = Object.keys(JSON.parse(result || '{}'));
66
+ } catch (error) {
67
+ // npm outdated exits with code 1 when there are outdated packages
68
+ if (error.stdout) {
69
+ try {
70
+ outdated = Object.keys(JSON.parse(error.stdout));
71
+ } catch {}
72
+ }
73
+ }
74
+
75
+ // Filter ą¤•ą„‡ą¤µą¤² ą¤¹ą¤®ą¤¾ą¤°ą„€ dependencies
76
+ const outdatedDeps = outdated.filter(dep => DEPENDENCIES.includes(dep));
77
+
78
+ if (outdatedDeps.length === 0) {
79
+ console.log('āœ… All dependencies are up to date!\n');
80
+ return;
81
+ }
82
+
83
+ console.log(`šŸ“¦ Found ${outdatedDeps.length} outdated dependencies:`);
84
+ outdatedDeps.forEach(dep => console.log(` - ${dep}`));
85
+ console.log('\nšŸ”§ Updating to latest versions...\n');
86
+
87
+ // Update ą¤øą¤­ą„€ outdated dependencies
88
+ const updateCommand = outdatedDeps.map(dep => `${dep}@latest`).join(' ');
89
+ execSync(`npm install ${updateCommand}`, {
90
+ stdio: 'inherit',
91
+ encoding: 'utf8'
92
+ });
93
+
94
+ console.log('\nāœ… Dependencies updated successfully!\n');
95
+
96
+ // Show updated versions
97
+ try {
98
+ console.log('šŸ“‹ Current versions:');
99
+ execSync('npm list --depth=0', {
100
+ stdio: 'inherit',
101
+ encoding: 'utf8'
102
+ });
103
+ } catch (error) {
104
+ // Ignore errors from npm list
105
+ }
106
+
107
+ } catch (error) {
108
+ console.error('\nāš ļø Warning: Could not auto-update dependencies');
109
+ console.error(' You can manually update using: npm run update-deps\n');
110
+ // Don't fail the installation
111
+ }
112
+ };
113
+
114
+ // Main execution
115
+ if (!shouldSkipUpdate()) {
116
+ updateDependencies();
117
+ } else {
118
+ console.log('šŸ” Checking dependencies...\n');
119
+ }