wildcard-domain-finder-plus 1.0.0 → 1.0.3

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.
@@ -0,0 +1,43 @@
1
+ name: Publish Package
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ permissions:
9
+ id-token: write
10
+ contents: read
11
+
12
+ jobs:
13
+ publish:
14
+ runs-on: ubuntu-latest # You *can* change this, but ubuntu is simplest
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+
19
+ # Install Java (your build environment)
20
+ - name: Set up Java
21
+ uses: actions/setup-java@v4
22
+ with:
23
+ distribution: 'temurin'
24
+ java-version: '21'
25
+
26
+ # Build your Java project
27
+ - name: Build Java project
28
+ run: ./gradlew build || mvn package
29
+
30
+ # Install Node (required for npm publish)
31
+ - name: Set up Node.js
32
+ uses: actions/setup-node@v4
33
+ with:
34
+ node-version: '24'
35
+ registry-url: 'https://registry.npmjs.org'
36
+
37
+ # Install npm dependencies (if any)
38
+ - name: Install npm dependencies
39
+ run: npm ci --ignore-scripts
40
+
41
+ # Publish to npm using Trusted Publishing
42
+ - name: Publish to npm
43
+ run: npm publish --provenance --access public
package/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ [![npm version](https://img.shields.io/npm/v/wildcard-domain-finder-plus.svg)](https://www.npmjs.com/package/wildcard-domain-finder-plus)
2
+ [![npm downloads](https://img.shields.io/npm/dm/wildcard-domain-finder-plus.svg)](https://www.npmjs.com/package/wildcard-domain-finder-plus)
3
+ [![license](https://img.shields.io/badge/license-ISC-blue.svg)](LICENSE)
4
+
1
5
  ## Attribution
2
6
 
3
7
  This project is an enhanced fork of
@@ -35,15 +39,20 @@ Install globally:
35
39
 
36
40
  Run a simple wildcard scan:
37
41
 
42
+ wdf -d "test*.com"
43
+
44
+ Or use the full command:
45
+
38
46
  wildcard-domain-finder-plus -d "test*.com"
39
47
 
48
+
40
49
  Run a regex scan:
41
50
 
42
- wildcard-domain-finder-plus --regex "^[a-z]{3}\\.com$"
51
+ wdf --regex "^[a-z]{3}\\.com$"
43
52
 
44
53
  Scan all TLDs:
45
54
 
46
- wildcard-domain-finder-plus -d "go*" --tlds all
55
+ wdf -d "go*" --tlds all
47
56
 
48
57
  ---
49
58
 
@@ -77,7 +86,7 @@ Use * to represent any single alphanumeric character (a–z, 0–9).
77
86
 
78
87
  Example:
79
88
 
80
- wildcard-domain-finder-plus -d "test*.com"
89
+ wdf -d "test*.com"
81
90
 
82
91
  This expands to:
83
92
 
@@ -96,7 +105,7 @@ Regex mode gives you full control over domain label generation.
96
105
 
97
106
  Example:
98
107
 
99
- wildcard-domain-finder-plus --regex "^[a-z0-9]{3}\\.com$"
108
+ wdf --regex "^[a-z0-9]{3}\\.com$"
100
109
 
101
110
  This generates:
102
111
 
@@ -157,11 +166,11 @@ Choose from:
157
166
 
158
167
  Examples:
159
168
 
160
- wildcard-domain-finder-plus -d "go*" --tlds all
169
+ wdf -d "go*" --tlds all
161
170
 
162
- wildcard-domain-finder-plus -d "ai*" --tlds premium
171
+ wdf -d "ai*" --tlds premium
163
172
 
164
- wildcard-domain-finder-plus -d "shop*" --tlds com,net,org,io
173
+ wdf -d "shop*" --tlds com,net,org,io
165
174
 
166
175
  ---
167
176
 
@@ -178,11 +187,11 @@ Supported filters:
178
187
 
179
188
  Examples:
180
189
 
181
- wildcard-domain-finder-plus -d "***.com" --filter length<=3
190
+ wdf -d "***.com" --filter length<=3
182
191
 
183
- wildcard-domain-finder-plus -d "*ai" --filter ends:ai
192
+ wdf -d "*ai" --filter ends:ai
184
193
 
185
- wildcard-domain-finder-plus -d "go*" --filter starts:go
194
+ wdf -d "go*" --filter starts:go
186
195
 
187
196
  ---
188
197
 
@@ -197,7 +206,7 @@ Sorting options:
197
206
 
198
207
  Example:
199
208
 
200
- wildcard-domain-finder-plus -d "***.com" --sort comfirst
209
+ wdf -d "***.com" --sort comfirst
201
210
 
202
211
  ---
203
212
 
@@ -212,7 +221,7 @@ Choose from:
212
221
 
213
222
  Example:
214
223
 
215
- wildcard-domain-finder-plus -d "go*" -F jsonl -o results.jsonl
224
+ wdf -d "go*" -F jsonl -o results.jsonl
216
225
 
217
226
  ---
218
227
 
@@ -220,11 +229,11 @@ Example:
220
229
 
221
230
  Large scans can be resumed:
222
231
 
223
- wildcard-domain-finder-plus -R
232
+ wdf -R
224
233
 
225
234
  Disable caching:
226
235
 
227
- wildcard-domain-finder-plus --no-cache
236
+ wdf --no-cache
228
237
 
229
238
  ---
230
239
 
@@ -232,7 +241,7 @@ Disable caching:
232
241
 
233
242
  If no domain or regex is provided:
234
243
 
235
- wildcard-domain-finder-plus
244
+ wdf
236
245
 
237
246
  You will be prompted for:
238
247
 
@@ -248,23 +257,23 @@ You will be prompted for:
248
257
 
249
258
  ### Find all 3‑letter .com domains
250
259
 
251
- wildcard-domain-finder-plus --regex "^[a-z]{3}\\.com$"
260
+ wdf --regex "^[a-z]{3}\\.com$"
252
261
 
253
262
  ### Find all domains starting with “go” across all TLDs
254
263
 
255
- wildcard-domain-finder-plus -d "go*" --tlds all
264
+ wdf -d "go*" --tlds all
256
265
 
257
266
  ### Find short premium domains
258
267
 
259
- wildcard-domain-finder-plus -d "***" --tlds premium --filter length<=3
268
+ wdf -d "***" --tlds premium --filter length<=3
260
269
 
261
270
  ### Find 4‑letter .io or .ai domains
262
271
 
263
- wildcard-domain-finder-plus --regex "^[a-z]{4}\\.(io|ai)$"
272
+ wdf --regex "^[a-z]{4}\\.(io|ai)$"
264
273
 
265
274
  ### Wildcard + filtering + sorting
266
275
 
267
- wildcard-domain-finder-plus -d "go**.com" --filter length<=4 --sort alpha
276
+ wdf -d "go**.com" --filter length<=4 --sort alpha
268
277
 
269
278
  ---
270
279
 
@@ -302,15 +311,15 @@ Regex mode avoids generating unnecessary combinations.
302
311
 
303
312
  ### Wildcard + premium TLDs
304
313
 
305
- wildcard-domain-finder-plus -d "ai*" --tlds premium
314
+ wdf -d "ai*" --tlds premium
306
315
 
307
316
  ### Regex + JSONL output
308
317
 
309
- wildcard-domain-finder-plus --regex "^[a-z]{4}\\.(io|ai)$" -F jsonl
318
+ wdf --regex "^[a-z]{4}\\.(io|ai)$" -F jsonl
310
319
 
311
320
  ### Resume a long scan
312
321
 
313
- wildcard-domain-finder-plus -R
322
+ wdf -R
314
323
 
315
324
  ---
316
325
 
package/README.txt CHANGED
@@ -1,3 +1,357 @@
1
+ [![npm version](https://img.shields.io/npm/v/wildcard-domain-finder-plus.svg)](https://www.npmjs.com/package/wildcard-domain-finder-plus)
2
+ [![npm downloads](https://img.shields.io/npm/dm/wildcard-domain-finder-plus.svg)](https://www.npmjs.com/package/wildcard-domain-finder-plus)
3
+ [![license](https://img.shields.io/badge/license-ISC-blue.svg)](LICENSE)
4
+
5
+ Attribution
6
+
7
+ This project is an enhanced fork of
8
+ **besoeasy/wildcard-domain-finder**
9
+ Original work © the respective author(s), licensed under the ISC License.
10
+
11
+ This fork adds major new capabilities including:
12
+ - streaming domain generation (no memory blowups)
13
+ - regex mode
14
+ - wildcard mode
15
+ - TLD selection (explicit, all, premium)
16
+ - filtering (tld, length, starts, ends)
17
+ - sorting (comfirst, tld, length, alpha)
18
+ - JSON / JSONL / CSV / TXT output
19
+ - caching + resume mode
20
+ - interactive pause/resume/quit controls
21
+ - concurrency + timeout controls
22
+ - full CLI help system
23
+
24
+ All original licensing terms are preserved.
25
+
26
+ ---
27
+
28
+ Wildcard Domain Finder Plus
29
+
30
+ A command-line tool to find available domain names using wildcard patterns, regex patterns, or structured filters — now with streaming generation, caching, and advanced TLD control.
31
+
32
+ ---
33
+
34
+ Quick Start
35
+
36
+ Install globally:
37
+
38
+ npm install -g wildcard-domain-finder-plus
39
+
40
+ Run a simple wildcard scan:
41
+
42
+ wdf -d "test*.com"
43
+
44
+ Or use the full command:
45
+
46
+ wildcard-domain-finder-plus -d "test*.com"
47
+
48
+
49
+ Run a regex scan:
50
+
51
+ wdf --regex "^[a-z]{3}\\.com$"
52
+
53
+ Scan all TLDs:
54
+
55
+ wdf -d "go*" --tlds all
56
+
57
+ ---
58
+
59
+ Installation
60
+
61
+ Via NPX (no installation required)
62
+
63
+ npx wildcard-domain-finder-plus
64
+
65
+ Or install globally
66
+
67
+ npm install -g wildcard-domain-finder-plus
68
+
69
+ ---
70
+
71
+ Usage Guide
72
+
73
+ Wildcard Domain Finder Plus supports three primary modes:
74
+
75
+ 1. Wildcard mode
76
+ 2. Regex mode
77
+ 3. Structured filtering mode
78
+
79
+ Each mode can be combined with TLD selection, sorting, output formatting, and caching.
80
+
81
+ ---
82
+
83
+ Wildcard Mode
84
+
85
+ Use * to represent any single alphanumeric character (a–z, 0–9).
86
+
87
+ Example:
88
+
89
+ wdf -d "test*.com"
90
+
91
+ This expands to:
92
+
93
+ - testa.com
94
+ - testb.com
95
+ - test1.com
96
+ - …and so on
97
+
98
+ Wildcard mode is ideal when you know the pattern but not the exact characters.
99
+
100
+ ---
101
+
102
+ Regex Mode
103
+
104
+ Regex mode gives you full control over domain label generation.
105
+
106
+ Example:
107
+
108
+ wdf --regex "^[a-z0-9]{3}\\.com$"
109
+
110
+ This generates:
111
+
112
+ - aaa.com
113
+ - aab.com
114
+ - …
115
+ - zzz.com
116
+
117
+ Regex mode supports:
118
+
119
+ - character classes
120
+ - alternation
121
+ - anchors
122
+ - quantifiers
123
+ - grouping
124
+
125
+ ---
126
+
127
+ Regex Helper
128
+
129
+ Three‑letter domains
130
+
131
+ ^[a-z]{3}\\.(com|net|org)$
132
+
133
+ Two letters + one digit
134
+
135
+ ^[a-z]{2}[0-9]\\.com$
136
+
137
+ Start with “go”, then any 2 chars
138
+
139
+ ^go[a-z0-9]{2}\\.io$
140
+
141
+ Premium TLDs only
142
+
143
+ ^[a-z]{3,5}\\.(ai|io|dev)$
144
+
145
+ Only letters (no digits)
146
+
147
+ ^[a-z]+\\.(com|net)$
148
+
149
+ Letters + optional hyphen
150
+
151
+ ^[a-z]+(-[a-z]+)?\\.com$
152
+
153
+ Multiple TLDs
154
+
155
+ ^[a-z]{4}\\.(com|io|ai|co)$
156
+
157
+ ---
158
+
159
+ TLD Selection
160
+
161
+ Choose from:
162
+
163
+ - explicit list
164
+ - all known TLDs
165
+ - premium curated list
166
+
167
+ Examples:
168
+
169
+ wdf -d "go*" --tlds all
170
+
171
+ wdf -d "ai*" --tlds premium
172
+
173
+ wdf -d "shop*" --tlds com,net,org,io
174
+
175
+ ---
176
+
177
+ Filtering
178
+
179
+ Filters allow you to refine generated domains.
180
+
181
+ Supported filters:
182
+
183
+ - tld:com
184
+ - length<=3
185
+ - starts:go
186
+ - ends:ai
187
+
188
+ Examples:
189
+
190
+ wdf -d "***.com" --filter length<=3
191
+
192
+ wdf -d "*ai" --filter ends:ai
193
+
194
+ wdf -d "go*" --filter starts:go
195
+
196
+ ---
197
+
198
+ Sorting
199
+
200
+ Sorting options:
201
+
202
+ - comfirst
203
+ - tld
204
+ - length
205
+ - alpha
206
+
207
+ Example:
208
+
209
+ wdf -d "***.com" --sort comfirst
210
+
211
+ ---
212
+
213
+ Output Formats
214
+
215
+ Choose from:
216
+
217
+ - txt
218
+ - json
219
+ - jsonl
220
+ - csv
221
+
222
+ Example:
223
+
224
+ wdf -d "go*" -F jsonl -o results.jsonl
225
+
226
+ ---
227
+
228
+ Caching and Resume Mode
229
+
230
+ Large scans can be resumed:
231
+
232
+ wdf -R
233
+
234
+ Disable caching:
235
+
236
+ wdf --no-cache
237
+
238
+ ---
239
+
240
+ Interactive Mode
241
+
242
+ If no domain or regex is provided:
243
+
244
+ wdf
245
+
246
+ You will be prompted for:
247
+
248
+ - mode
249
+ - pattern
250
+ - TLDs
251
+ - filters
252
+ - output format
253
+
254
+ ---
255
+
256
+ Common Recipes
257
+
258
+ Find all 3‑letter .com domains
259
+
260
+ wdf --regex "^[a-z]{3}\\.com$"
261
+
262
+ Find all domains starting with “go” across all TLDs
263
+
264
+ wdf -d "go*" --tlds all
265
+
266
+ Find short premium domains
267
+
268
+ wdf -d "***" --tlds premium --filter length<=3
269
+
270
+ Find 4‑letter .io or .ai domains
271
+
272
+ wdf --regex "^[a-z]{4}\\.(io|ai)$"
273
+
274
+ Wildcard + filtering + sorting
275
+
276
+ wdf -d "go**.com" --filter length<=4 --sort alpha
277
+
278
+ ---
279
+
280
+ Performance Tips
281
+
282
+ 1. Increase concurrency for faster scans
283
+
284
+ --concurrency 50
285
+
286
+ 2. Reduce DNS timeout for faster failures
287
+
288
+ --timeout 2000
289
+
290
+ 3. Use JSONL for huge output sets
291
+
292
+ -F jsonl
293
+
294
+ 4. Use resume mode for long scans
295
+
296
+ -R
297
+
298
+ 5. Limit search space with filters
299
+
300
+ --filter length<=4
301
+ --filter starts:go
302
+ --filter tld:com
303
+
304
+ 6. Prefer regex for structured patterns
305
+
306
+ Regex mode avoids generating unnecessary combinations.
307
+
308
+ ---
309
+
310
+ Full Examples
311
+
312
+ Wildcard + premium TLDs
313
+
314
+ wdf -d "ai*" --tlds premium
315
+
316
+ Regex + JSONL output
317
+
318
+ wdf --regex "^[a-z]{4}\\.(io|ai)$" -F jsonl
319
+
320
+ Resume a long scan
321
+
322
+ wdf -R
323
+
324
+ ---
325
+
326
+ Features
327
+
328
+ - ⚡ Streaming domain generation (no memory blowups)
329
+ - 🃏 Wildcard mode (* = single character)
330
+ - 🔍 Regex mode
331
+ - 🌍 TLD selection (explicit, all, premium)
332
+ - 🧹 Filtering (tld, length, starts, ends)
333
+ - 🔃 Sorting (comfirst, tld, length, alpha)
334
+ - 📝 Multiple output formats (txt, json, jsonl, csv)
335
+ - 💾 Caching + resume mode
336
+ - ⏸️ Interactive pause/resume/quit
337
+ - ⏱️ Concurrency + timeout controls
338
+ - 🛡️ Graceful error handling
339
+ - ❓ Full CLI help system
340
+
341
+ ---
342
+
343
+ License
344
+
345
+ ISC
346
+ All original licensing terms are preserved.
347
+
348
+ ---
349
+
350
+ Links
351
+
352
+ - NPM Package: https://www.npmjs.com/package/wildcard-domain-finder-plus
353
+ - GitHub Repository: https://github.com/nbcr/wildcard-domain-finder-plus
354
+ - Issues: https://github.com/nbcr/wildcard-domain-finder-plus/issues
1
355
  Attribution
2
356
  This project is an enhanced fork of
3
357
  besoeasy/wildcard-domain-finder
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "wildcard-domain-finder-plus",
3
- "version": "1.0.0",
3
+ "version": "1.0.3",
4
4
  "description": "Advanced wildcard and regex-based domain availability scanner with streaming generation, filtering, sorting, and caching.",
5
5
  "main": "app.js",
6
6
  "bin": {
7
- "wildcard-domain-finder-plus": "app.js"
7
+ "wildcard-domain-finder-plus": "app.js",
8
+ "wdf": "app.js"
8
9
  },
9
10
  "scripts": {
10
11
  "test": "echo \"Error: no test specified\" && exit 1"