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.
- package/.github/workflows/npm-publish.yml +43 -0
- package/README.md +32 -23
- package/README.txt +354 -0
- package/package.json +3 -2
|
@@ -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
|
+
[](https://www.npmjs.com/package/wildcard-domain-finder-plus)
|
|
2
|
+
[](https://www.npmjs.com/package/wildcard-domain-finder-plus)
|
|
3
|
+
[](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
|
-
|
|
51
|
+
wdf --regex "^[a-z]{3}\\.com$"
|
|
43
52
|
|
|
44
53
|
Scan all TLDs:
|
|
45
54
|
|
|
46
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
169
|
+
wdf -d "go*" --tlds all
|
|
161
170
|
|
|
162
|
-
|
|
171
|
+
wdf -d "ai*" --tlds premium
|
|
163
172
|
|
|
164
|
-
|
|
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
|
-
|
|
190
|
+
wdf -d "***.com" --filter length<=3
|
|
182
191
|
|
|
183
|
-
|
|
192
|
+
wdf -d "*ai" --filter ends:ai
|
|
184
193
|
|
|
185
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
232
|
+
wdf -R
|
|
224
233
|
|
|
225
234
|
Disable caching:
|
|
226
235
|
|
|
227
|
-
|
|
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
|
-
|
|
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
|
-
|
|
260
|
+
wdf --regex "^[a-z]{3}\\.com$"
|
|
252
261
|
|
|
253
262
|
### Find all domains starting with “go” across all TLDs
|
|
254
263
|
|
|
255
|
-
|
|
264
|
+
wdf -d "go*" --tlds all
|
|
256
265
|
|
|
257
266
|
### Find short premium domains
|
|
258
267
|
|
|
259
|
-
|
|
268
|
+
wdf -d "***" --tlds premium --filter length<=3
|
|
260
269
|
|
|
261
270
|
### Find 4‑letter .io or .ai domains
|
|
262
271
|
|
|
263
|
-
|
|
272
|
+
wdf --regex "^[a-z]{4}\\.(io|ai)$"
|
|
264
273
|
|
|
265
274
|
### Wildcard + filtering + sorting
|
|
266
275
|
|
|
267
|
-
|
|
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
|
-
|
|
314
|
+
wdf -d "ai*" --tlds premium
|
|
306
315
|
|
|
307
316
|
### Regex + JSONL output
|
|
308
317
|
|
|
309
|
-
|
|
318
|
+
wdf --regex "^[a-z]{4}\\.(io|ai)$" -F jsonl
|
|
310
319
|
|
|
311
320
|
### Resume a long scan
|
|
312
321
|
|
|
313
|
-
|
|
322
|
+
wdf -R
|
|
314
323
|
|
|
315
324
|
---
|
|
316
325
|
|
package/README.txt
CHANGED
|
@@ -1,3 +1,357 @@
|
|
|
1
|
+
[](https://www.npmjs.com/package/wildcard-domain-finder-plus)
|
|
2
|
+
[](https://www.npmjs.com/package/wildcard-domain-finder-plus)
|
|
3
|
+
[](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.
|
|
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"
|