optikit 1.2.4 โ†’ 1.3.0

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.
Files changed (104) hide show
  1. package/.claude/commands/build.md +57 -0
  2. package/.claude/commands/clean.md +45 -0
  3. package/.claude/commands/generate.md +64 -0
  4. package/.claude/commands/rollback.md +67 -0
  5. package/.claude/commands/run.md +63 -0
  6. package/.claude/commands/setup.md +69 -0
  7. package/.claude/commands/sync-docs.md +148 -0
  8. package/.claude/commands/version.md +63 -0
  9. package/.claude/settings.local.json +28 -0
  10. package/.claude-plugin/marketplace.json +36 -0
  11. package/.claude-plugin/plugin.json +25 -0
  12. package/.history/README_20260325211923.md +268 -0
  13. package/.history/README_20260325212116.md +268 -0
  14. package/.history/README_20260325212234.md +266 -0
  15. package/.history/README_20260325221838.md +321 -0
  16. package/.history/README_20260325221920.md +327 -0
  17. package/.history/README_20260325222245.md +328 -0
  18. package/.history/README_20260325222247.md +328 -0
  19. package/.mcp.json +8 -0
  20. package/CHANGELOG.md +79 -46
  21. package/CLAUDE.md +57 -206
  22. package/OPTIKIT_AGENT.md +398 -0
  23. package/README.md +293 -60
  24. package/dist/cli.js +75 -241
  25. package/dist/commands/build/commands.js +146 -0
  26. package/dist/commands/build/testflight.js +14 -0
  27. package/dist/commands/clean/commands.js +41 -0
  28. package/dist/commands/clean/flutter.js +8 -14
  29. package/dist/commands/clean/ios.js +12 -15
  30. package/dist/commands/config/aliases.js +122 -0
  31. package/dist/commands/config/commands.js +49 -0
  32. package/dist/commands/config/initApp.js +191 -0
  33. package/dist/commands/config/rollback.js +15 -4
  34. package/dist/commands/config/upgrade.js +36 -0
  35. package/dist/commands/mcp/commands.js +21 -0
  36. package/dist/commands/mcp/server.js +27 -0
  37. package/dist/commands/mcp/setup.js +62 -0
  38. package/dist/commands/mcp/tools.js +359 -0
  39. package/dist/commands/project/commands.js +132 -0
  40. package/dist/commands/project/devices.js +10 -26
  41. package/dist/commands/project/doctor.js +58 -0
  42. package/dist/commands/project/generate.js +183 -30
  43. package/dist/commands/project/setup.js +10 -28
  44. package/dist/commands/project/status.js +65 -0
  45. package/dist/commands/version/bump.js +96 -82
  46. package/dist/commands/version/commands.js +63 -0
  47. package/dist/commands/version/update.js +36 -24
  48. package/dist/constants.js +6 -1
  49. package/dist/styles.js +42 -5
  50. package/dist/utils/helpers/error.js +14 -0
  51. package/dist/utils/helpers/file.js +1 -1
  52. package/dist/utils/helpers/version.js +2 -1
  53. package/dist/utils/services/backup.js +12 -1
  54. package/dist/utils/services/command.js +1 -34
  55. package/dist/utils/services/exec.js +76 -101
  56. package/dist/utils/services/logger.js +10 -4
  57. package/dist/utils/validators/validation.js +24 -12
  58. package/docs/INSTALLATION.md +72 -0
  59. package/docs/TROUBLESHOOT.md +140 -0
  60. package/docs/USAGE.md +185 -0
  61. package/docs/VERSION_MANAGEMENT.md +177 -0
  62. package/package.json +7 -11
  63. package/src/cli.ts +82 -362
  64. package/src/commands/build/commands.ts +169 -0
  65. package/src/commands/build/testflight.ts +18 -0
  66. package/src/commands/clean/commands.ts +43 -0
  67. package/src/commands/clean/flutter.ts +9 -13
  68. package/src/commands/clean/ios.ts +13 -13
  69. package/src/commands/config/aliases.ts +150 -0
  70. package/src/commands/config/commands.ts +50 -0
  71. package/src/commands/config/initApp.ts +213 -0
  72. package/src/commands/config/rollback.ts +16 -4
  73. package/src/commands/config/upgrade.ts +40 -0
  74. package/src/commands/mcp/commands.ts +23 -0
  75. package/src/commands/mcp/server.ts +35 -0
  76. package/src/commands/mcp/setup.ts +69 -0
  77. package/src/commands/mcp/tools.ts +365 -0
  78. package/src/commands/project/commands.ts +132 -0
  79. package/src/commands/project/devices.ts +11 -24
  80. package/src/commands/project/doctor.ts +81 -0
  81. package/src/commands/project/generate.ts +211 -32
  82. package/src/commands/project/setup.ts +13 -30
  83. package/src/commands/project/status.ts +72 -0
  84. package/src/commands/version/bump.ts +124 -85
  85. package/src/commands/version/commands.ts +76 -0
  86. package/src/commands/version/update.ts +86 -75
  87. package/src/constants.ts +7 -1
  88. package/src/styles.ts +49 -7
  89. package/src/utils/helpers/error.ts +16 -0
  90. package/src/utils/helpers/file.ts +1 -1
  91. package/src/utils/helpers/version.ts +2 -1
  92. package/src/utils/services/backup.ts +17 -1
  93. package/src/utils/services/command.ts +1 -58
  94. package/src/utils/services/exec.ts +92 -117
  95. package/src/utils/services/logger.ts +12 -4
  96. package/src/utils/validators/validation.ts +24 -12
  97. package/CODE_QUALITY.md +0 -398
  98. package/ENHANCEMENTS.md +0 -310
  99. package/FEATURE_ENHANCEMENTS.md +0 -435
  100. package/INSTALLATION.md +0 -118
  101. package/SAFETY_FEATURES.md +0 -396
  102. package/TROUBLESHOOT.md +0 -60
  103. package/USAGE.md +0 -388
  104. package/VERSION_MANAGEMENT.md +0 -438
package/README.md CHANGED
@@ -1,88 +1,321 @@
1
- # OptiKit CLI
2
-
3
- <div style="text-align: center;">
4
- <img src="./assets/logo.png" alt="OptiKit CLI" width="360" style="margin-bottom: 10px;"/>
5
- <div style="display: inline-block; vertical-align: middle;">
6
- <a href="https://www.linkedin.com/in/dev-mahmoud-elshenawy/">
7
- <img src="https://img.shields.io/badge/Creator-Mahmoud%20El%20Shenawy-blue" alt="Creator" style="margin: 5px;">
8
- </a>
9
- <a href="https://www.buymeacoffee.com/m.elshenawy" target="_blank">
10
- <img src="https://cdn.buymeacoffee.com/buttons/default-orange.png" alt="Buy Me A Coffee" width="174" style="margin: 5px;">
11
- </a>
12
- </div>
13
- </div>
1
+ <h1 align="center">๐Ÿš€ OptiKit CLI</h1>
2
+
3
+ <p align="center">
4
+ <strong>Build, version, and deploy Flutter apps in one CLI.</strong><br/>
5
+ The command-line toolkit for Flutter & Opticore developers.
6
+ </p>
7
+
8
+ <p align="center">
9
+ <a href="https://www.npmjs.com/package/optikit"><img src="https://img.shields.io/npm/v/optikit?style=flat-square&color=cyan&label=npm" alt="npm"/></a>
10
+ <a href="https://flutter.dev"><img src="https://img.shields.io/badge/Flutter-Compatible-02569B?style=flat-square&logo=flutter&logoColor=white" alt="Flutter"/></a>
11
+ <a href="https://claude.com/plugins/optikit"><img src="https://img.shields.io/badge/Claude%20Code-Plugin-blueviolet?style=flat-square" alt="Claude Code Plugin"/></a>
12
+ <img src="https://img.shields.io/badge/MCP-Supported-orange?style=flat-square" alt="MCP Supported"/>
13
+ <img src="https://img.shields.io/badge/Platform-macOS%20%7C%20Linux%20%7C%20Windows-blue?style=flat-square" alt="Platform"/>
14
+ <a href="https://pub.dev/packages/opticore"><img src="https://img.shields.io/badge/Opticore-pub.dev-teal?style=flat-square" alt="Opticore"/></a>
15
+ <a href="https://www.linkedin.com/in/dev-mahmoud-elshenawy/"><img src="https://img.shields.io/badge/Creator-Mahmoud%20El%20Shenawy-blue?style=flat-square" alt="Creator"/></a>
16
+ <a href="./LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow?style=flat-square" alt="License"/></a>
17
+ </p>
18
+
19
+ <p align="center">
20
+ <a href="https://www.buymeacoffee.com/m.elshenawy">
21
+ <img src="https://img.shields.io/badge/Buy%20Me%20A%20Coffee-Support%20My%20Work-FFDD00?style=for-the-badge&logo=buymeacoffee&logoColor=0D1117" alt="Buy Me A Coffee"/>
22
+ </a>
23
+ </p>
24
+
25
+ ---
26
+
27
+ ## โšก Install & Go
28
+
29
+ ```bash
30
+ npm install -g optikit
31
+ ```
32
+
33
+ You get two commands โ€” `optikit` (full name) and `ok` (shorthand). Both work identically.
34
+
35
+ ```bash
36
+ optikit init # ๐Ÿ”ง Setup OptiKit in your project
37
+ optikit bump patch # ๐Ÿ“ฆ 1.0.0 โ†’ 1.0.1
38
+ optikit apk # ๐Ÿ—๏ธ Build release APK
39
+ optikit tf -o # ๐Ÿš€ TestFlight: bump iOS + build IPA + open
40
+ optikit gen module login -r # ๐Ÿงฉ Generate BLoC module with route
41
+ optikit aliases # ๐Ÿ“‹ See all shortcuts
42
+ ```
43
+
44
+ > ๐Ÿ’ก Prefer shorter commands? Use `ok` instead of `optikit` โ€” every example above works with both.
45
+
46
+ ---
47
+
48
+ ## ๐Ÿ”ฅ Why OptiKit?
49
+
50
+ | Feature | Description |
51
+ |---------|-------------|
52
+ | ๐Ÿค– **Claude Code Plugin** | AI understands your project and acts on it via MCP |
53
+ | โœ… **Short aliases** | Every command has a memorable shortcut |
54
+ | โœ… **Combo flags** | Clean, bump, build, and open in one command |
55
+ | โœ… **Smart versioning** | Dual iOS/Android build numbers handled automatically |
56
+ | โœ… **Auto backups** | Version files backed up before every change |
57
+ | โœ… **Module scaffolding** | Full BLoC pattern generated in one command |
58
+ | โœ… **FVM support** | Built-in Flutter Version Manager integration |
59
+
60
+ ---
61
+
62
+ ## ๐Ÿ“– Commands at a Glance
63
+
64
+ > Every command has a short alias. Run `optikit aliases` to see the full list in your terminal.
65
+
66
+ ### ๐Ÿ—๏ธ Build
67
+
68
+ | Command | Alias | What it does |
69
+ |---------|-------|-------------|
70
+ | `optikit flutter-build-apk` | `apk` | Build release APK |
71
+ | `optikit flutter-build-bundle` | `aab` | Build release AAB |
72
+ | `optikit flutter-build-ios` | `ios` | Build iOS app |
73
+ | `optikit flutter-build-ipa` | `ipa` | Build release IPA |
74
+ | `optikit testflight` | `tf` | Bump iOS build + build IPA |
75
+
76
+ **Combo flags** โ€” mix and match on any build command:
77
+
78
+ ```bash
79
+ optikit apk --clean # ๐Ÿงน Clean โ†’ build
80
+ optikit ipa -b patch -o # ๐Ÿ“ฆ Bump โ†’ build โ†’ open output
81
+ optikit ipa --clean -i -o # ๐Ÿงน Clean โ†’ bump iOS โ†’ build โ†’ open
82
+ optikit tf -o # ๐Ÿš€ TestFlight โ†’ open output
83
+ ```
84
+
85
+ ### ๐Ÿงน Clean
86
+
87
+ | Command | Alias | What it does |
88
+ |---------|-------|-------------|
89
+ | `optikit clean` | `c` | Clean Flutter project |
90
+ | `optikit clean-flutter` | `cf` | Clean Flutter (explicit) |
91
+ | `optikit clean-ios` | `ci` | Clean iOS / CocoaPods |
92
+
93
+ ```bash
94
+ optikit clean -a # Clean all (Flutter + iOS)
95
+ optikit ci -cu # Clean iOS + cache + repo update
96
+ ```
97
+
98
+ ### ๐Ÿ“ฆ Version
99
+
100
+ | Command | Alias | What it does |
101
+ |---------|-------|-------------|
102
+ | `optikit version` | `v` | Show current version |
103
+ | `optikit bump patch` | | Bug fix: 1.0.0 โ†’ 1.0.1 |
104
+ | `optikit bump minor` | | Feature: 1.0.0 โ†’ 1.1.0 |
105
+ | `optikit bump major` | | Breaking: 1.0.0 โ†’ 2.0.0 |
106
+ | `optikit bump-ios` | `bi` | Bump iOS build only |
107
+ | `optikit bump-android` | `ba` | Bump Android build only |
108
+ | `optikit bump-build` | `bb` | Bump both build numbers |
109
+
110
+ > ๐Ÿ“˜ Deep dive: **[Version Management](docs/VERSION_MANAGEMENT.md)**
111
+
112
+ ### ๐Ÿงฉ Generate
113
+
114
+ ```bash
115
+ optikit gen module login # Scaffold BLoC module
116
+ optikit gen module login -r # Scaffold + register route
117
+ optikit gen repo user # Generate repository
118
+ optikit route settings # Add route to app_router.dart
119
+ ```
120
+
121
+ ### ๐Ÿ“ฑ Run & Open
122
+
123
+ ```bash
124
+ optikit run # Run app on device
125
+ optikit rs # Interactive device picker
126
+ optikit devs # List connected devices
127
+ optikit xcode # Open in Xcode
128
+ optikit studio # Open in Android Studio
129
+ ```
130
+
131
+ ### ๐Ÿ”ง Tools
132
+
133
+ ```bash
134
+ optikit info # Project status snapshot
135
+ optikit dr # Environment health check
136
+ optikit undo # List/restore backups
137
+ optikit up # Check for CLI updates
138
+ optikit vscode # Setup VS Code settings
139
+ ```
140
+
141
+ ---
142
+
143
+ ## ๐ŸŽฏ Common Workflows
144
+
145
+ ```bash
146
+ # ๐Ÿš€ TestFlight upload
147
+ optikit tf -o
148
+
149
+ # ๐Ÿ“ฆ Release APK with version bump
150
+ optikit apk -b patch -o
151
+
152
+ # ๐Ÿงน Full clean rebuild
153
+ optikit ipa --clean -o
154
+
155
+ # ๐Ÿงฉ New feature module
156
+ optikit gen module user_profile -r
157
+
158
+ # ๐Ÿ” Check project state
159
+ optikit info
160
+ ```
161
+
162
+ ---
163
+
164
+ ## โš™๏ธ Configuration
165
+
166
+ ```bash
167
+ optikit init # Creates .optikitrc.json
168
+ ```
169
+
170
+ ```json
171
+ {
172
+ "backupRetentionCount": 5,
173
+ "useFvmByDefault": true,
174
+ "autoBackup": true
175
+ }
176
+ ```
177
+
178
+ | Option | Default | Description |
179
+ |--------|---------|-------------|
180
+ | `backupRetentionCount` | `5` | Number of backups to keep per file |
181
+ | `useFvmByDefault` | `true` | Use FVM for all Flutter commands |
182
+ | `autoBackup` | `true` | Backup files before version changes |
183
+
184
+ ---
185
+
186
+ ## ๐Ÿ’พ Backups & Rollback
187
+
188
+ OptiKit **automatically backs up** version files before any modification:
14
189
 
15
- **OptiKit** is a powerful command-line interface (CLI) tool designed to streamline your workflows and automate repetitive tasks. With its user-friendly commands and robust functionality, **OptiKit** helps you manage your projects efficiently and effectively.
190
+ | File | Backed up before |
191
+ |------|-----------------|
192
+ | `pubspec.yaml` | Version bumps, clean |
193
+ | `ios/Runner.xcodeproj/project.pbxproj` | Version bumps |
194
+ | `ios/Runner/Info.plist` | Version bumps |
16
195
 
17
- ## Designed for Opticore Developers
196
+ Backups are stored in `.optikit-backup/` directories next to the original files with timestamps:
18
197
 
19
- **OptiKit CLI** is built to empower developersโ€”especially those leveraging our [Opticore micro framework](https://pub.dev/packages/opticore). By integrating seamlessly with Opticore, OptiKit streamlines your workflow and automates repetitive tasks, allowing you to focus on building powerful applications.
198
+ ```
199
+ your-project/
200
+ โ”œโ”€โ”€ pubspec.yaml
201
+ โ”œโ”€โ”€ .optikit-backup/
202
+ โ”‚ โ”œโ”€โ”€ pubspec_2026-03-25T10-30-00-000Z.yaml
203
+ โ”‚ โ””โ”€โ”€ pubspec_2026-03-25T11-15-30-000Z.yaml
204
+ โ””โ”€โ”€ ios/Runner.xcodeproj/
205
+ โ”œโ”€โ”€ project.pbxproj
206
+ โ””โ”€โ”€ .optikit-backup/
207
+ โ””โ”€โ”€ project_2026-03-25T10-30-00-000Z.pbxproj
208
+ ```
209
+
210
+ **Manage backups:**
211
+
212
+ ```bash
213
+ optikit undo # ๐Ÿ“‹ List all backups
214
+ optikit undo --restore 1 # โ™ป๏ธ Restore backup #1
215
+ optikit undo --before 2026-03-20 # ๐Ÿ“… Filter backups by date
216
+ ```
20
217
 
21
- Explore the **OptiCore** framework on [pub.dev](https://pub.dev/packages/opticore) and see how **OptiKit** can enhance your development experience.
218
+ Old backups are automatically cleaned up (keeps last 5 by default, configurable via `backupRetentionCount`).
22
219
 
23
- ## Key Features
220
+ > ๐Ÿ’ก `.optikit-backup/` is added to `.gitignore` during `optikit init`.
24
221
 
25
- - **Smart Version Management** - Intelligent semantic versioning with platform-specific build number handling
26
- - **Automatic Backups & Rollback** - Safe file modifications with easy restoration
27
- - **Build Automation** - Streamlined APK, Bundle, IPA, and iOS builds with validation
28
- - **Module Generation** - Scaffold complete BLoC pattern modules for Opticore framework
29
- - **Project Configuration** - Flexible .optikitrc.json configuration system
30
- - **Cross-Platform** - Consistent performance across macOS, Windows, and Linux
31
- - **FVM Support** - Built-in Flutter Version Manager support
222
+ ---
32
223
 
33
- See [FEATURE_ENHANCEMENTS.md](FEATURE_ENHANCEMENTS.md) for complete feature details.
224
+ ## ๐Ÿค– AI-Powered with Claude Code
34
225
 
35
- ## Installation
226
+ OptiKit ships as a **Claude Code plugin** powered by the **Model Context Protocol (MCP)**. Claude doesn't just run commands โ€” it **understands your Flutter project** and makes intelligent decisions.
36
227
 
37
- For detailed instructions on how to install **OptiKit CLI** on your system, refer to the [Installation Guide](https://github.com/dev-mahmoud-elshenawy/optikit/blob/main/INSTALLATION.md).
228
+ ### ๐Ÿง  How It Works
38
229
 
39
- ## Quick Start
230
+ You describe what you need. Claude **picks the right tools automatically**:
231
+
232
+ | You say | Claude does |
233
+ |---------|-----------|
234
+ | *"Fix this build error"* | Runs `clean` โ†’ `build` automatically |
235
+ | *"Prepare a TestFlight build"* | Runs `testflight` (bump iOS + build IPA) |
236
+ | *"Create a login feature"* | Generates BLoC module + registers route |
237
+ | *"We need to release v2.0"* | Bumps major version + builds both platforms |
238
+ | *"What version are we on?"* | Shows version with iOS & Android build numbers |
239
+ | *"Undo the last version bump"* | Lists backups and restores the right one |
240
+
241
+ ### โšก Setup in Seconds
242
+
243
+ **Option 1 โ€” Plugin Marketplace:**
244
+ ```bash
245
+ /plugin marketplace add dev-mahmoud-elshenawy/optikit
246
+ /plugin install optikit
247
+ ```
40
248
 
249
+ **Option 2 โ€” One Command:**
41
250
  ```bash
42
- # Initialize OptiKit in your Flutter project
43
- optikit init
251
+ optikit setup-claude
252
+ ```
44
253
 
45
- # Show current version
46
- optikit version
254
+ That's it. All OptiKit tools are instantly available to Claude.
47
255
 
48
- # Bump patch version (1.0.0 โ†’ 1.0.1)
49
- optikit bump patch
256
+ ### ๐Ÿ› ๏ธ Available Tool Categories
50
257
 
51
- # Build APK for release
52
- optikit flutter-build-apk
258
+ | Category | What Claude can do |
259
+ |----------|--------------------|
260
+ | ๐Ÿ—๏ธ **Build** | Build APK, AAB, iOS, IPA with clean/bump/open combos |
261
+ | ๐Ÿงน **Clean** | Fix stale caches, CocoaPods issues, full project cleanup |
262
+ | ๐Ÿ“ฆ **Version** | Bump versions, manage iOS/Android build numbers independently |
263
+ | ๐Ÿงฉ **Generate** | Scaffold BLoC modules, repositories, and auto-register routes |
264
+ | ๐Ÿ“ฑ **Run** | Launch app on devices, list connected devices |
265
+ | ๐Ÿ”ง **Diagnostics** | Health checks, project status, backup management |
266
+ | โš™๏ธ **Config** | Project setup, VS Code config, upgrade checks |
53
267
 
54
- # View available backups
55
- optikit rollback
268
+ The MCP server runs locally via stdio โ€” fast, private, no cloud dependency.
56
269
 
57
- # Get help
58
- optikit --help
270
+ ```bash
271
+ optikit setup-claude # โœ… Register with Claude Code
272
+ optikit setup-claude --uninstall # โŒ Remove when needed
59
273
  ```
60
274
 
61
- ## Documentation
275
+ ---
276
+
277
+ ## ๐Ÿ“˜ Documentation
278
+
279
+ | Doc | Description |
280
+ |-----|-------------|
281
+ | ๐Ÿ“– **[Command Reference](docs/USAGE.md)** | All commands, flags, and examples |
282
+ | ๐Ÿ“ฆ **[Version Management](docs/VERSION_MANAGEMENT.md)** | iOS/Android dual build strategy |
283
+ | ๐Ÿ”ง **[Installation Guide](docs/INSTALLATION.md)** | NPM, Homebrew, source install |
284
+ | ๐Ÿ” **[Troubleshooting](docs/TROUBLESHOOT.md)** | Common issues and quick fixes |
285
+
286
+ ---
287
+
288
+ ## โšก Supercharge Development with Opticore
62
289
 
63
- ### User Guides
290
+ **OptiKit CLI** is the companion tool for **[Opticore](https://pub.dev/packages/opticore)** โ€” a lightweight BLoC-based micro-framework for Flutter.
64
291
 
65
- - **[Usage Guide](USAGE.md)** - Complete guide to all commands and features
66
- - **[Installation Guide](INSTALLATION.md)** - How to install OptiKit CLI
67
- - **[Troubleshooting Guide](TROUBLESHOOT.md)** - Solutions to common problems
292
+ | Together they give you | |
293
+ |---|---|
294
+ | ๐Ÿงฉ **Module scaffolding** | Generate full BLoC modules that plug directly into Opticore |
295
+ | ๐Ÿ›ฃ๏ธ **Auto-routing** | Register routes in `app_router.dart` with one flag |
296
+ | ๐Ÿ—๏ธ **App initialization** | Scaffold `main.dart`, config, and router for Opticore projects |
297
+ | ๐Ÿ“ฆ **Smart builds** | Build, version, and clean with short commands and combo flags |
68
298
 
69
- ### Feature Documentation
299
+ > ๐Ÿ’ก **Not using Opticore?** No problem โ€” build, version, clean, and run commands work with **any Flutter project**.
70
300
 
71
- - **[Version Management](VERSION_MANAGEMENT.md)** - Smart version bumping and build number strategies
72
- - **[Safety Features](SAFETY_FEATURES.md)** - Validation and automatic backup system
73
- - **[Feature Enhancements](FEATURE_ENHANCEMENTS.md)** - New commands (init, rollback, configuration)
74
- - **[Code Quality](CODE_QUALITY.md)** - Architecture improvements and best practices
301
+ ---
75
302
 
76
- ### Developer Resources
303
+ ## ๐Ÿ‘ค Created By
304
+
305
+ <div align="center">
306
+
307
+ ### Built with โค๏ธ by [Mahmoud El Shenawy](https://github.com/dev-mahmoud-elshenawy)
308
+
309
+ [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?logo=linkedin&logoColor=white&style=for-the-badge)](https://www.linkedin.com/in/dev-mahmoud-elshenawy)
310
+ [![GitHub](https://img.shields.io/badge/GitHub-181717?logo=github&logoColor=white&style=for-the-badge)](https://github.com/dev-mahmoud-elshenawy)
311
+ [![Medium](https://img.shields.io/badge/Medium-000000?logo=medium&logoColor=white&style=for-the-badge)](https://medium.com/@dev-mahmoud-elshenawy)
312
+
313
+ </div>
77
314
 
78
- - **[Changelog](CHANGELOG.md)** - Version history and updates
79
- - **[Contributing Guide](CLAUDE.md)** - Development guide for contributors
315
+ ---
80
316
 
81
- ## Contact
317
+ ## ๐Ÿ“œ License
82
318
 
83
- For inquiries or feedback, feel free to reach out to me:
319
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge)](./LICENSE)
84
320
 
85
- - **GitHub**: [dev-mahmoud-elshenawy](https://github.com/dev-mahmoud-elshenawy)
86
- - **Email**: [dev.m.elshenawy@icloud.com](mailto:dev.m.elshenawy@icloud.com)
87
- - **LinkedIn**: [dev-mahmoud-elshenawy](https://www.linkedin.com/in/dev-mahmoud-elshenawy)
88
- - **Medium**: [dev-mahmoud-elshenawy](https://medium.com/@dev-mahmoud-elshenawy)
321
+ **OptiKit** is open-source under the **[MIT License](./LICENSE)**. Free for personal and commercial use.