@bragduck/cli 2.29.2 โ†’ 2.30.2

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/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # Bragduck CLI
2
2
 
3
- > Transform your GitHub Pull Requests into polished achievements with AI-powered refinement
3
+ > Part of the [BragDuck monorepo](../../README.md). Run all commands from the monorepo root unless noted otherwise.
4
+
5
+ > Sync work items from GitHub, GitLab, Bitbucket, Jira, and Confluence into polished achievements with AI-powered refinement
4
6
 
5
7
  [![npm version](https://badge.fury.io/js/@bragduck%2Fcli.svg)](https://www.npmjs.com/package/@bragduck/cli)
6
8
  [![Node.js Version](https://img.shields.io/node/v/@bragduck/cli)](https://nodejs.org)
@@ -9,22 +11,22 @@
9
11
 
10
12
  ## Overview
11
13
 
12
- Bragduck CLI is a powerful command-line tool that helps developers track and showcase their achievements by transforming GitHub Pull Requests into polished "brags" using AI-powered refinement. Perfect for updating your portfolio, preparing for performance reviews, or simply keeping track of your accomplishments.
14
+ Bragduck CLI helps developers track and showcase their achievements by syncing work items from multiple sources (GitHub, GitLab, Bitbucket, Jira, Confluence) and refining them into polished "brags" using AI. Perfect for performance reviews, portfolio updates, or keeping track of accomplishments.
13
15
 
14
16
  ### Why Bragduck?
15
17
 
16
- - ๐Ÿค– **AI-Powered**: Automatically refines your commit messages into professional achievements
17
- - ๐ŸŽฏ **Context-Aware**: Analyzes commit diffs, file changes, and patterns
18
- - ๐Ÿ”’ **Secure**: OAuth authentication with encrypted credential storage
19
- - ๐ŸŽจ **Beautiful UI**: Interactive terminal experience with colors and spinners
20
- - ๐Ÿš€ **Fast**: Optimized build size (69KB) for quick installation and execution
21
- - ๐ŸŒ **Cross-Platform**: Works on macOS, Windows, and Linux
18
+ - **Multi-Source Sync**: Pull work items from GitHub, GitLab, Bitbucket, Jira, and Confluence
19
+ - **AI-Powered**: Automatically refines work items into professional achievements
20
+ - **Context-Aware**: Analyzes PRs, issues, and project data for meaningful brags
21
+ - **Secure**: OAuth and token-based authentication with encrypted credential storage
22
+ - **Beautiful UI**: Interactive terminal experience with colors and spinners
23
+ - **Cross-Platform**: Works on macOS, Windows, and Linux
22
24
 
23
25
  ## Prerequisites
24
26
 
25
27
  Before installing Bragduck CLI, you need:
26
28
 
27
- 1. **Node.js โ‰ฅ18.0.0**
29
+ 1. **Node.js >=18.0.0**
28
30
  ```bash
29
31
  node --version # Should be v18.0.0 or higher
30
32
  ```
@@ -49,40 +51,56 @@ Before installing Bragduck CLI, you need:
49
51
 
50
52
  ## Installation
51
53
 
54
+ ### As a global tool (end users)
55
+
52
56
  ```bash
53
57
  npm install -g @bragduck/cli
54
58
  ```
55
59
 
60
+ ### For development (monorepo)
61
+
62
+ From the monorepo root:
63
+
64
+ ```bash
65
+ pnpm install
66
+ pnpm --filter @bragduck/cli build
67
+ ```
68
+
56
69
  ## Usage
57
70
 
58
71
  ### Quick Start
59
72
 
60
- 1. **Install GitHub CLI and authenticate:**
73
+ 1. **Install Bragduck CLI globally:**
61
74
  ```bash
62
- # Install GitHub CLI (if not already installed)
63
- brew install gh # macOS
64
-
65
- # Authenticate with GitHub
66
- gh auth login
75
+ npm install -g @bragduck/cli
67
76
  ```
68
77
 
69
- 2. **Install Bragduck CLI globally:**
78
+ 2. **Authenticate with Bragduck:**
70
79
  ```bash
71
- npm install -g @bragduck/cli
80
+ bragduck auth login
72
81
  ```
82
+ This opens your browser for OAuth authentication. Once completed, your credentials are securely stored.
73
83
 
74
- 3. **Initialize and authenticate:**
84
+ 3. **Connect your services** (optional, for GitHub/GitLab/Bitbucket/Jira/Confluence):
75
85
  ```bash
76
- bragduck init
86
+ # GitHub: install and authenticate with GitHub CLI
87
+ brew install gh && gh auth login
88
+
89
+ # GitLab: authenticate with personal access token
90
+ bragduck auth gitlab
91
+
92
+ # Bitbucket: authenticate with API token
93
+ bragduck auth bitbucket
94
+
95
+ # Atlassian (Jira + Confluence): authenticate via OAuth
96
+ bragduck auth atlassian
77
97
  ```
78
- This opens your browser for OAuth authentication. Once completed, your credentials are securely stored.
79
98
 
80
- 4. **Scan your merged PRs:**
99
+ 4. **Sync your work items:**
81
100
  ```bash
82
- cd /path/to/your/github/repo
83
- bragduck scan
101
+ bragduck sync
84
102
  ```
85
- Select PRs interactively, preview AI-refined brags, and create them.
103
+ Select services, review AI-refined brags, and create them.
86
104
 
87
105
  5. **View your brags:**
88
106
  ```bash
@@ -91,56 +109,64 @@ npm install -g @bragduck/cli
91
109
 
92
110
  ### Commands
93
111
 
94
- #### `bragduck init`
112
+ #### `bragduck auth [subcommand]`
95
113
 
96
- Authenticate with Bragduck using OAuth. Opens your browser for authentication and securely stores credentials.
114
+ Manage authentication for Bragduck and connected services.
97
115
 
98
116
  ```bash
99
- bragduck init
117
+ # Login to Bragduck (default)
118
+ bragduck auth login
119
+
120
+ # Check authentication status for all services
121
+ bragduck auth status
122
+
123
+ # Authenticate with GitLab
124
+ bragduck auth gitlab
125
+
126
+ # Authenticate with Bitbucket
127
+ bragduck auth bitbucket
128
+
129
+ # Authenticate with Atlassian (Jira + Confluence)
130
+ bragduck auth atlassian
100
131
  ```
101
132
 
102
- #### `bragduck scan`
133
+ **Subcommands:**
134
+ - `login` - Authenticate with Bragduck (default if no subcommand)
135
+ - `status` - Show authentication status for all services
136
+ - `bitbucket` - Authenticate with Bitbucket using API token
137
+ - `gitlab` - Authenticate with GitLab using personal access token
138
+ - `atlassian` - Authenticate with Atlassian Cloud via OAuth 2.0
139
+
140
+ #### `bragduck sync`
103
141
 
104
- Scan merged GitHub Pull Requests and create brags with AI-powered refinement.
142
+ Sync work items from authenticated services and create brags with AI-powered refinement.
105
143
 
106
144
  ```bash
107
- # Scan last 30 days (default, your PRs only)
108
- bragduck scan
145
+ # Interactive sync (choose services and items)
146
+ bragduck sync
147
+
148
+ # Sync last 7 days
149
+ bragduck sync --days 7
150
+
151
+ # Sync last 24 hours
152
+ bragduck sync --today
109
153
 
110
- # Scan last 60 days
111
- bragduck scan --days 60
154
+ # Sync all services, skip prompts, auto-accept
155
+ bragduck sync --turbo
112
156
 
113
- # Include all PRs (not just yours)
114
- bragduck scan --all
157
+ # Sync all authenticated services
158
+ bragduck sync --all
115
159
 
116
- # Combine options
117
- bragduck scan --days 90 --all
160
+ # Sync a specific source
161
+ bragduck sync --source github
118
162
  ```
119
163
 
120
164
  **Options:**
121
- - `-d, --days <number>` - Number of days to scan (default: 30)
122
- - `-a, --all` - Include all PRs, not just current user's
123
-
124
- **Workflow:**
125
- 1. Validates GitHub repository
126
- 2. Fetches merged PRs in timeframe (filtered by author unless --all)
127
- 3. Displays PRs in format: `#123 PR Title [stats]`
128
- 4. Interactive checkbox selection
129
- 5. AI refines selected PRs (using title + description)
130
- 6. Preview refined brags in table format
131
- 7. Confirm and create brags
132
-
133
- **What gets scanned:**
134
- - โœ… Merged Pull Requests only
135
- - โœ… PR title and description used for context
136
- - โœ… Aggregate PR statistics (files changed, insertions, deletions)
137
- - โœ… Filtered by PR author (person who created the PR)
138
- - โŒ Draft or closed-without-merge PRs excluded
139
- - โŒ Individual commits not scanned
140
-
141
- **Requirements:**
142
- - Must be in a GitHub repository (GitLab/Bitbucket not supported)
143
- - GitHub CLI must be installed and authenticated (`gh auth login`)
165
+ - `-d, --days <number>` - Number of days to scan
166
+ - `-t, --today` - Scan the last 24 hours (shorthand for --days 1)
167
+ - `--turbo` - Skip all prompts, auto-select all items, auto-accept refinements
168
+ - `-a, --all` - Sync all authenticated services (skip service selection)
169
+ - `-s, --source <type>` - Explicit source type (github)
144
170
 
145
171
  #### `bragduck list`
146
172
 
@@ -153,17 +179,11 @@ bragduck list
153
179
  # Show 25 brags
154
180
  bragduck list --limit 25
155
181
 
156
- # Show next page (skip first 50)
157
- bragduck list --offset 50
158
-
159
182
  # Filter by tags
160
183
  bragduck list --tags "feature,bugfix"
161
184
 
162
185
  # Search by keyword
163
186
  bragduck list --search "implemented authentication"
164
-
165
- # Combine filters
166
- bragduck list --tags "feature" --search "API" --limit 20
167
187
  ```
168
188
 
169
189
  **Options:**
@@ -223,28 +243,27 @@ bragduck --help
223
243
  ## Features
224
244
 
225
245
  ### Core Features
226
- - ๐Ÿ” **OAuth Authentication** - Secure authentication with local callback server
227
- - ๐Ÿค– **AI-Powered Refinement** - Transforms commit messages into professional achievements
228
- - โœ… **Interactive Selection** - Checkbox interface for selecting commits
229
- - ๐Ÿ“Š **Rich Preview** - Table preview of refined brags before creation
230
- - ๐Ÿ” **Smart Filtering** - Filter brags by tags and search keywords
231
- - ๐Ÿ“„ **Pagination Support** - Handle large numbers of brags efficiently
246
+ - **Multi-Source Sync** - GitHub, GitLab, Bitbucket, Jira, Confluence
247
+ - **OAuth & Token Auth** - Secure authentication per service
248
+ - **AI-Powered Refinement** - Transforms work items into professional achievements
249
+ - **Interactive Selection** - Checkbox interface for selecting items
250
+ - **Rich Preview** - Table preview of refined brags before creation
251
+ - **Smart Filtering** - Filter brags by tags and search keywords
252
+ - **Turbo Mode** - Fully automated sync with no prompts
232
253
 
233
254
  ### Technical Features
234
- - ๐Ÿ”’ **Secure Storage** - Encrypted credential storage with AES-256-GCM
235
- - ๐ŸŽจ **Beautiful UI** - Colorful terminal output with spinners and tables
236
- - ๐Ÿ”„ **Auto-Updates** - Automatic version checking with update notifications
237
- - ๐Ÿ› **Debug Mode** - Detailed logging for troubleshooting
238
- - โš™๏ธ **Configurable** - Customize API URL, scan days, and more
239
- - ๐Ÿš€ **Lightweight** - Only 69KB build size
240
- - โœจ **TypeScript** - Fully typed for better IDE support
255
+ - **Secure Storage** - Encrypted credential storage with AES-256-GCM
256
+ - **Beautiful UI** - Colorful terminal output with spinners and tables
257
+ - **Auto-Updates** - Automatic version checking with update notifications
258
+ - **Debug Mode** - Detailed logging for troubleshooting
259
+ - **Configurable** - Customize API URL, scan days, and more
260
+ - **TypeScript** - Fully typed for better IDE support
241
261
 
242
262
  ### Platform Support
243
- - โœ… macOS (Tested)
244
- - โœ… Windows (Compatible)
245
- - โœ… Linux (Compatible)
246
- - โœ… Node.js โ‰ฅ18.0.0
247
- - โœ… GitHub repositories only (GitLab/Bitbucket not supported)
263
+ - macOS (Tested)
264
+ - Windows (Compatible)
265
+ - Linux (Compatible)
266
+ - Node.js >=18.0.0
248
267
 
249
268
  ## Configuration
250
269
 
@@ -276,19 +295,15 @@ Credentials are encrypted and stored at:
276
295
  ```bash
277
296
  # Re-authenticate
278
297
  bragduck logout
279
- bragduck init
298
+ bragduck auth login
280
299
  ```
281
300
 
282
- ### Git Repository Not Found
283
-
284
- **Problem**: "Not a git repository" error
301
+ **Problem**: Service not showing in sync
285
302
 
286
303
  **Solution**:
287
304
  ```bash
288
- # Make sure you're in a git repository
289
- cd /path/to/your/git/repo
290
- git status # Verify it's a git repo
291
- bragduck scan
305
+ # Check which services are authenticated
306
+ bragduck auth status
292
307
  ```
293
308
 
294
309
  ### GitHub CLI Not Authenticated
@@ -304,73 +319,17 @@ gh auth login
304
319
  gh auth status
305
320
  ```
306
321
 
307
- ### Not a GitHub Repository
322
+ ### No Work Items Found
308
323
 
309
- **Problem**: "This repository is not hosted on GitHub" error
310
-
311
- **Solution**:
312
- - Bragduck CLI currently only supports GitHub repositories
313
- - Make sure you're in a repository with a GitHub remote:
314
- ```bash
315
- git remote -v # Should show github.com URL
316
- ```
317
-
318
- ### No Merged PRs Found
319
-
320
- **Problem**: "No merged PRs found in the last X days"
324
+ **Problem**: "No items found in the last X days"
321
325
 
322
326
  **Solution**:
323
327
  ```bash
324
328
  # Increase the scan days
325
- bragduck scan --days 90
326
-
327
- # Or include all PRs (not just yours)
328
- bragduck scan --all
329
-
330
- # Check if you have merged PRs on GitHub
331
- gh pr list --state merged --limit 10
332
- ```
333
-
334
- ### GitHub CLI Not Installed
335
-
336
- **Problem**: "GitHub CLI (gh) is not installed" error
337
-
338
- **Solution**:
339
- ```bash
340
- # macOS
341
- brew install gh
329
+ bragduck sync --days 90
342
330
 
343
- # Windows
344
- winget install --id GitHub.cli
345
-
346
- # Linux - see https://github.com/cli/cli#installation
347
-
348
- # Verify installation
349
- gh --version
350
- ```
351
-
352
- ### API Connection Issues
353
-
354
- **Problem**: Network or API errors
355
-
356
- **Solution**:
357
- ```bash
358
- # Check your internet connection
359
- # Try with debug mode to see detailed logs
360
- bragduck --debug scan
361
- ```
362
-
363
- ### Version Check Failures
364
-
365
- **Problem**: Version check taking too long or failing
366
-
367
- **Solution**:
368
- ```bash
369
- # Skip version check for this run
370
- bragduck --skip-version-check scan
371
-
372
- # Or disable it permanently
373
- bragduck config set autoVersionCheck false
331
+ # Sync all authenticated services
332
+ bragduck sync --all
374
333
  ```
375
334
 
376
335
  ### Enable Debug Mode
@@ -381,136 +340,54 @@ For any issues, enable debug mode to see detailed logs:
381
340
  bragduck --debug <command>
382
341
  ```
383
342
 
384
- This shows:
385
- - API requests and responses
386
- - Authentication status
387
- - Configuration reads/writes
388
- - Internal operations
389
-
390
343
  ## Development
391
344
 
392
345
  ### Prerequisites
393
346
 
394
- - Node.js โ‰ฅ 18.0.0
395
- - npm or yarn
347
+ - Node.js >= 18.0.0
348
+ - pnpm (workspace package manager)
396
349
 
397
- ### Setup
350
+ ### Setup (monorepo)
398
351
 
399
352
  ```bash
400
- # Clone the repository
401
- git clone https://github.com/medhatdawoud/bragduck-cli.git
402
- cd bragduck-cli
403
-
404
- # Install dependencies
405
- npm install
353
+ # From the monorepo root
354
+ pnpm install
406
355
 
407
- # Build the project
408
- npm run build
356
+ # Build the CLI
357
+ pnpm --filter @bragduck/cli build
409
358
 
410
359
  # Run tests
411
- npm test
412
-
413
- # Run tests with coverage
414
- npm run test:coverage
415
-
416
- # Lint code
417
- npm run lint
418
-
419
- # Format code
420
- npm run format
360
+ pnpm --filter @bragduck/cli test
421
361
  ```
422
362
 
423
363
  ### Project Structure
424
364
 
425
365
  ```
426
- bragduck-cli/
427
- โ”œโ”€โ”€ src/
428
- โ”‚ โ”œโ”€โ”€ commands/ # CLI commands
429
- โ”‚ โ”œโ”€โ”€ services/ # Business logic services
430
- โ”‚ โ”œโ”€โ”€ ui/ # Terminal UI components
431
- โ”‚ โ”œโ”€โ”€ types/ # TypeScript type definitions
432
- โ”‚ โ”œโ”€โ”€ utils/ # Utility functions
433
- โ”‚ โ””โ”€โ”€ cli.ts # CLI entry point
434
- โ”œโ”€โ”€ tests/ # Test files
435
- โ”œโ”€โ”€ dist/ # Built files
436
- โ””โ”€โ”€ package.json
366
+ src/
367
+ โ”œโ”€โ”€ commands/ # CLI commands
368
+ โ”œโ”€โ”€ services/ # Business logic services
369
+ โ”œโ”€โ”€ ui/ # Terminal UI components
370
+ โ”œโ”€โ”€ types/ # TypeScript type definitions
371
+ โ”œโ”€โ”€ utils/ # Utility functions
372
+ โ””โ”€โ”€ cli.ts # CLI entry point
437
373
  ```
438
374
 
439
375
  ### Scripts
440
376
 
441
377
  | Script | Description |
442
378
  |--------|-------------|
443
- | `npm run build` | Build the project with tsup |
444
- | `npm run dev` | Build in watch mode for development |
445
- | `npm test` | Run test suite (122 tests) |
446
- | `npm run test:coverage` | Run tests with coverage report |
447
- | `npm run test:ui` | Run tests with interactive UI |
448
- | `npm run lint` | Lint code with ESLint |
449
- | `npm run lint:fix` | Lint and auto-fix issues |
450
- | `npm run format` | Format code with Prettier |
451
- | `npm run typecheck` | Type check without building |
452
-
453
- ### Testing
454
-
455
- The project has comprehensive test coverage:
456
-
457
- ```bash
458
- # Run all tests
459
- npm test
460
-
461
- # Run with coverage report
462
- npm run test:coverage
463
-
464
- # Run specific test file
465
- npx vitest run tests/commands/config.test.ts
466
-
467
- # Run in watch mode
468
- npx vitest
469
- ```
470
-
471
- **Test Stats:**
472
- - โœ… 126 tests passing
473
- - ๐Ÿ“Š 50% code coverage (focused on core logic)
474
- - ๐Ÿงช 8 test suites covering:
475
- - Services (Storage, Git, API, GitHub)
476
- - Commands (Config, List)
477
- - Utilities (Version, Errors)
478
-
479
- ### Architecture
480
-
481
- ```
482
- src/
483
- โ”œโ”€โ”€ commands/ # CLI command implementations
484
- โ”‚ โ”œโ”€โ”€ init.ts # OAuth authentication flow
485
- โ”‚ โ”œโ”€โ”€ scan.ts # Main feature - commit scanning
486
- โ”‚ โ”œโ”€โ”€ list.ts # List brags with filtering
487
- โ”‚ โ”œโ”€โ”€ config.ts # Configuration management
488
- โ”‚ โ””โ”€โ”€ logout.ts # Credential cleanup
489
- โ”œโ”€โ”€ services/ # Business logic services
490
- โ”‚ โ”œโ”€โ”€ auth.service.ts # Authentication & token management
491
- โ”‚ โ”œโ”€โ”€ api.service.ts # Backend API client (ofetch)
492
- โ”‚ โ”œโ”€โ”€ git.service.ts # Git operations (simple-git)
493
- โ”‚ โ”œโ”€โ”€ github.service.ts # GitHub PR fetching (gh CLI)
494
- โ”‚ โ””โ”€โ”€ storage.service.ts # Encrypted credential storage
495
- โ”œโ”€โ”€ ui/ # Terminal UI components
496
- โ”‚ โ”œโ”€โ”€ prompts.ts # Interactive prompts (Inquirer)
497
- โ”‚ โ”œโ”€โ”€ formatters.ts # Output formatting (chalk, cli-table3)
498
- โ”‚ โ””โ”€โ”€ spinners.ts # Loading indicators (ora)
499
- โ”œโ”€โ”€ utils/ # Utility functions
500
- โ”‚ โ”œโ”€โ”€ errors.ts # Custom error classes
501
- โ”‚ โ”œโ”€โ”€ logger.ts # Logging utility
502
- โ”‚ โ”œโ”€โ”€ version.ts # Version checking & comparison
503
- โ”‚ โ”œโ”€โ”€ validators.ts # Input validation
504
- โ”‚ โ”œโ”€โ”€ browser.ts # Cross-platform browser opening
505
- โ”‚ โ””โ”€โ”€ oauth-server.ts # Local OAuth callback server
506
- โ””โ”€โ”€ types/ # TypeScript type definitions
507
- ```
379
+ | `pnpm --filter @bragduck/cli build` | Build the project with tsup |
380
+ | `pnpm --filter @bragduck/cli dev` | Build in watch mode for development |
381
+ | `pnpm --filter @bragduck/cli test` | Run test suite |
382
+ | `pnpm --filter @bragduck/cli test:coverage` | Run tests with coverage report |
383
+ | `pnpm --filter @bragduck/cli lint` | Lint code with ESLint |
384
+ | `pnpm --filter @bragduck/cli lint:fix` | Lint and auto-fix issues |
508
385
 
509
386
  ### Tech Stack
510
387
 
511
388
  **Core:**
512
389
  - TypeScript 5.x
513
- - Node.js โ‰ฅ18.0.0
390
+ - Node.js >=18.0.0
514
391
  - Commander.js (CLI framework)
515
392
 
516
393
  **Build & Test:**
@@ -530,61 +407,22 @@ src/
530
407
 
531
408
  ## Contributing
532
409
 
533
- Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
410
+ Contributions are welcome.
534
411
 
535
412
  ### Quick Contribution Guide
536
413
 
537
414
  1. Fork the repository
538
415
  2. Create a feature branch (`git checkout -b feature/amazing-feature`)
539
416
  3. Make your changes
540
- 4. Run tests (`npm test`)
541
- 5. Commit your changes (`git commit -m 'Add amazing feature'`)
542
- 6. Push to the branch (`git push origin feature/amazing-feature`)
417
+ 4. Run tests (`pnpm --filter @bragduck/cli test`)
418
+ 5. Commit your changes
419
+ 6. Push to the branch
543
420
  7. Open a Pull Request
544
421
 
545
- ### Development Guidelines
546
-
547
- - Write tests for new features
548
- - Follow existing code style (ESLint + Prettier)
549
- - Update documentation for user-facing changes
550
- - Keep commits atomic and well-described
551
-
552
- ## Support
553
-
554
- ### Getting Help
555
-
556
- - ๐Ÿ“– **Documentation**: Read this README and [TESTING_GUIDE.md](TESTING_GUIDE.md)
557
- - ๐Ÿ› **Issues**: [GitHub Issues](https://github.com/medhatdawoud/bragduck-cli/issues)
558
- - ๐Ÿ’ฌ **Discussions**: [GitHub Discussions](https://github.com/medhatdawoud/bragduck-cli/discussions)
559
-
560
- ### Reporting Issues
561
-
562
- When reporting issues, please include:
563
-
564
- 1. **Environment**: OS, Node.js version, npm version
565
- 2. **Steps to reproduce**: Clear steps to reproduce the issue
566
- 3. **Expected behavior**: What you expected to happen
567
- 4. **Actual behavior**: What actually happened
568
- 5. **Debug output**: Run with `--debug` flag and include output
569
-
570
- Example:
571
- ```bash
572
- bragduck --debug scan
573
- ```
574
-
575
422
  ## License
576
423
 
577
424
  MIT License - see [LICENSE](LICENSE) file for details
578
425
 
579
- ## Acknowledgments
580
-
581
- Built with โค๏ธ using:
582
- - [Commander.js](https://github.com/tj/commander.js) - CLI framework
583
- - [Inquirer.js](https://github.com/SBoudrias/Inquirer.js) - Interactive prompts
584
- - [simple-git](https://github.com/steveukx/git-js) - Git operations
585
- - [Vitest](https://vitest.dev) - Testing framework
586
- - And many other great open-source projects
587
-
588
426
  ---
589
427
 
590
428
  **Made by [Medhat Dawoud](https://github.com/medhatdawoud)** | **Powered by AI**