@mytechtoday/augment-extensions 0.1.1 → 0.2.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 (79) hide show
  1. package/augment-extensions/domain-rules/wordpress/README.md +163 -0
  2. package/augment-extensions/domain-rules/wordpress/module.json +32 -0
  3. package/augment-extensions/domain-rules/wordpress/rules/coding-standards.md +617 -0
  4. package/augment-extensions/domain-rules/wordpress/rules/directory-structure.md +270 -0
  5. package/augment-extensions/domain-rules/wordpress/rules/file-patterns.md +423 -0
  6. package/augment-extensions/domain-rules/wordpress/rules/gutenberg-blocks.md +493 -0
  7. package/augment-extensions/domain-rules/wordpress/rules/performance.md +568 -0
  8. package/augment-extensions/domain-rules/wordpress/rules/plugin-development.md +510 -0
  9. package/augment-extensions/domain-rules/wordpress/rules/project-detection.md +251 -0
  10. package/augment-extensions/domain-rules/wordpress/rules/rest-api.md +501 -0
  11. package/augment-extensions/domain-rules/wordpress/rules/security.md +564 -0
  12. package/augment-extensions/domain-rules/wordpress/rules/theme-development.md +388 -0
  13. package/augment-extensions/domain-rules/wordpress/rules/woocommerce.md +441 -0
  14. package/augment-extensions/domain-rules/wordpress-plugin/README.md +139 -0
  15. package/augment-extensions/domain-rules/wordpress-plugin/examples/ajax-plugin.md +1599 -0
  16. package/augment-extensions/domain-rules/wordpress-plugin/examples/custom-post-type-plugin.md +1727 -0
  17. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block-plugin.md +428 -0
  18. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block.md +422 -0
  19. package/augment-extensions/domain-rules/wordpress-plugin/examples/mvc-plugin.md +1623 -0
  20. package/augment-extensions/domain-rules/wordpress-plugin/examples/object-oriented-plugin.md +1343 -0
  21. package/augment-extensions/domain-rules/wordpress-plugin/examples/rest-endpoint.md +734 -0
  22. package/augment-extensions/domain-rules/wordpress-plugin/examples/settings-page-plugin.md +1350 -0
  23. package/augment-extensions/domain-rules/wordpress-plugin/examples/simple-procedural-plugin.md +503 -0
  24. package/augment-extensions/domain-rules/wordpress-plugin/examples/singleton-plugin.md +971 -0
  25. package/augment-extensions/domain-rules/wordpress-plugin/module.json +53 -0
  26. package/augment-extensions/domain-rules/wordpress-plugin/rules/activation-hooks.md +770 -0
  27. package/augment-extensions/domain-rules/wordpress-plugin/rules/admin-interface.md +874 -0
  28. package/augment-extensions/domain-rules/wordpress-plugin/rules/ajax-handlers.md +629 -0
  29. package/augment-extensions/domain-rules/wordpress-plugin/rules/asset-management.md +559 -0
  30. package/augment-extensions/domain-rules/wordpress-plugin/rules/context-providers.md +709 -0
  31. package/augment-extensions/domain-rules/wordpress-plugin/rules/cron-jobs.md +736 -0
  32. package/augment-extensions/domain-rules/wordpress-plugin/rules/database-management.md +1057 -0
  33. package/augment-extensions/domain-rules/wordpress-plugin/rules/documentation-standards.md +463 -0
  34. package/augment-extensions/domain-rules/wordpress-plugin/rules/frontend-functionality.md +478 -0
  35. package/augment-extensions/domain-rules/wordpress-plugin/rules/gutenberg-blocks.md +818 -0
  36. package/augment-extensions/domain-rules/wordpress-plugin/rules/internationalization.md +416 -0
  37. package/augment-extensions/domain-rules/wordpress-plugin/rules/migration.md +667 -0
  38. package/augment-extensions/domain-rules/wordpress-plugin/rules/performance-optimization.md +878 -0
  39. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-architecture.md +693 -0
  40. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-structure.md +352 -0
  41. package/augment-extensions/domain-rules/wordpress-plugin/rules/rest-api.md +818 -0
  42. package/augment-extensions/domain-rules/wordpress-plugin/rules/scaffolding-workflow.md +624 -0
  43. package/augment-extensions/domain-rules/wordpress-plugin/rules/security-best-practices.md +866 -0
  44. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing-patterns.md +1165 -0
  45. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing.md +414 -0
  46. package/augment-extensions/domain-rules/wordpress-plugin/rules/vscode-integration.md +751 -0
  47. package/augment-extensions/domain-rules/wordpress-plugin/rules/woocommerce-integration.md +949 -0
  48. package/augment-extensions/domain-rules/wordpress-plugin/rules/wordpress-org-submission.md +458 -0
  49. package/augment-extensions/examples/gutenberg-block-plugin/README.md +101 -0
  50. package/augment-extensions/examples/gutenberg-block-plugin/examples/testimonial-block.md +428 -0
  51. package/augment-extensions/examples/gutenberg-block-plugin/module.json +40 -0
  52. package/augment-extensions/examples/rest-api-plugin/README.md +98 -0
  53. package/augment-extensions/examples/rest-api-plugin/examples/task-manager-api.md +1299 -0
  54. package/augment-extensions/examples/rest-api-plugin/module.json +40 -0
  55. package/augment-extensions/examples/woocommerce-extension/README.md +98 -0
  56. package/augment-extensions/examples/woocommerce-extension/examples/product-customizer.md +763 -0
  57. package/augment-extensions/examples/woocommerce-extension/module.json +40 -0
  58. package/augment-extensions/workflows/wordpress-plugin/README.md +232 -0
  59. package/augment-extensions/workflows/wordpress-plugin/ai-prompts.md +839 -0
  60. package/augment-extensions/workflows/wordpress-plugin/bead-decomposition-patterns.md +854 -0
  61. package/augment-extensions/workflows/wordpress-plugin/examples/complete-plugin-example.md +540 -0
  62. package/augment-extensions/workflows/wordpress-plugin/examples/custom-post-type-example.md +1083 -0
  63. package/augment-extensions/workflows/wordpress-plugin/examples/feature-addition-workflow.md +669 -0
  64. package/augment-extensions/workflows/wordpress-plugin/examples/plugin-creation-workflow.md +597 -0
  65. package/augment-extensions/workflows/wordpress-plugin/examples/secure-form-handler-example.md +925 -0
  66. package/augment-extensions/workflows/wordpress-plugin/examples/security-audit-workflow.md +752 -0
  67. package/augment-extensions/workflows/wordpress-plugin/examples/wordpress-org-submission-workflow.md +773 -0
  68. package/augment-extensions/workflows/wordpress-plugin/module.json +49 -0
  69. package/augment-extensions/workflows/wordpress-plugin/rules/best-practices.md +942 -0
  70. package/augment-extensions/workflows/wordpress-plugin/rules/development-workflow.md +702 -0
  71. package/augment-extensions/workflows/wordpress-plugin/rules/submission-workflow.md +728 -0
  72. package/augment-extensions/workflows/wordpress-plugin/rules/testing-workflow.md +775 -0
  73. package/cli/dist/cli.js +5 -1
  74. package/cli/dist/cli.js.map +1 -1
  75. package/cli/dist/commands/show.d.ts.map +1 -1
  76. package/cli/dist/commands/show.js +41 -0
  77. package/cli/dist/commands/show.js.map +1 -1
  78. package/modules.md +52 -0
  79. package/package.json +1 -1
@@ -0,0 +1,251 @@
1
+ # WordPress Project Detection
2
+
3
+ ## Overview
4
+
5
+ This document defines how to automatically detect WordPress projects and determine their type (full installation, theme, plugin, or block development).
6
+
7
+ ## Detection Criteria
8
+
9
+ ### 1. Full WordPress Installation
10
+
11
+ A project is identified as a **full WordPress installation** if it contains:
12
+
13
+ **Required Files:**
14
+ - `wp-config.php` or `wp-config-sample.php`
15
+ - `wp-load.php`
16
+ - `wp-settings.php`
17
+
18
+ **Required Directories:**
19
+ - `wp-includes/`
20
+ - `wp-admin/`
21
+ - `wp-content/`
22
+
23
+ **Detection Pattern:**
24
+ ```
25
+ wordpress-root/
26
+ ├── wp-config.php (or wp-config-sample.php)
27
+ ├── wp-load.php
28
+ ├── wp-settings.php
29
+ ├── wp-includes/
30
+ ├── wp-admin/
31
+ └── wp-content/
32
+ ```
33
+
34
+ ### 2. WordPress Theme Project
35
+
36
+ A project is identified as a **WordPress theme** if it contains:
37
+
38
+ **Required Files:**
39
+ - `style.css` with WordPress theme header
40
+ - `functions.php`
41
+ - `index.php`
42
+
43
+ **Optional Files (Block Theme):**
44
+ - `theme.json`
45
+ - `templates/` directory with `.html` files
46
+ - `parts/` directory with `.html` files
47
+
48
+ **Theme Header Detection:**
49
+ ```css
50
+ /*
51
+ Theme Name: Theme Name
52
+ Theme URI: https://example.com/
53
+ Author: Author Name
54
+ Author URI: https://example.com/
55
+ Description: Theme description
56
+ Version: 1.0.0
57
+ License: GNU General Public License v2 or later
58
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
59
+ Text Domain: theme-slug
60
+ */
61
+ ```
62
+
63
+ **Detection Pattern (Classic Theme):**
64
+ ```
65
+ theme-name/
66
+ ├── style.css (with theme header)
67
+ ├── functions.php
68
+ ├── index.php
69
+ ├── header.php
70
+ ├── footer.php
71
+ └── ...
72
+ ```
73
+
74
+ **Detection Pattern (Block Theme):**
75
+ ```
76
+ theme-name/
77
+ ├── style.css (with theme header)
78
+ ├── functions.php
79
+ ├── theme.json
80
+ ├── templates/
81
+ │ ├── index.html
82
+ │ └── ...
83
+ └── parts/
84
+ ├── header.html
85
+ └── ...
86
+ ```
87
+
88
+ ### 3. WordPress Plugin Project
89
+
90
+ A project is identified as a **WordPress plugin** if it contains:
91
+
92
+ **Required:**
93
+ - PHP file with WordPress plugin header
94
+
95
+ **Plugin Header Detection:**
96
+ ```php
97
+ <?php
98
+ /**
99
+ * Plugin Name: Plugin Name
100
+ * Plugin URI: https://example.com/
101
+ * Description: Plugin description
102
+ * Version: 1.0.0
103
+ * Author: Author Name
104
+ * Author URI: https://example.com/
105
+ * License: GPL v2 or later
106
+ * License URI: https://www.gnu.org/licenses/gpl-2.0.html
107
+ * Text Domain: plugin-slug
108
+ */
109
+ ```
110
+
111
+ **Detection Pattern:**
112
+ ```
113
+ plugin-name/
114
+ ├── plugin-name.php (with plugin header)
115
+ ├── readme.txt
116
+ ├── includes/
117
+ ├── admin/
118
+ └── ...
119
+ ```
120
+
121
+ ### 4. Gutenberg Block Development
122
+
123
+ A project is identified as a **Gutenberg block** if it contains:
124
+
125
+ **Required Files:**
126
+ - `block.json`
127
+ - `package.json` with `@wordpress/*` dependencies
128
+
129
+ **Block.json Detection:**
130
+ ```json
131
+ {
132
+ "$schema": "https://schemas.wp.org/trunk/block.json",
133
+ "apiVersion": 2,
134
+ "name": "namespace/block-name",
135
+ "title": "Block Title",
136
+ "category": "widgets",
137
+ "icon": "smiley",
138
+ "description": "Block description",
139
+ "supports": {},
140
+ "textdomain": "block-slug",
141
+ "editorScript": "file:./index.js",
142
+ "editorStyle": "file:./index.css",
143
+ "style": "file:./style-index.css"
144
+ }
145
+ ```
146
+
147
+ **Detection Pattern:**
148
+ ```
149
+ block-name/
150
+ ├── block.json
151
+ ├── package.json
152
+ ├── src/
153
+ │ ├── index.js
154
+ │ ├── edit.js
155
+ │ └── save.js
156
+ └── build/
157
+ ```
158
+
159
+ ## Detection Priority
160
+
161
+ When multiple detection criteria match, use this priority order:
162
+
163
+ 1. **Full WordPress Installation** (highest priority)
164
+ - Check for `wp-config.php` first
165
+ - If found, treat as full installation
166
+
167
+ 2. **Theme Project**
168
+ - Check for `style.css` with theme header
169
+ - Check for `functions.php` and `index.php`
170
+
171
+ 3. **Plugin Project**
172
+ - Check for PHP files with plugin header
173
+ - Typically in `wp-content/plugins/[plugin-name]/`
174
+
175
+ 4. **Block Development** (lowest priority)
176
+ - Check for `block.json`
177
+ - Check for `@wordpress/*` in `package.json`
178
+
179
+ ## Detection Algorithm
180
+
181
+ ```javascript
182
+ function detectWordPressProject(projectPath) {
183
+ // 1. Check for full WordPress installation
184
+ if (fileExists('wp-config.php') || fileExists('wp-config-sample.php')) {
185
+ if (directoryExists('wp-includes') && directoryExists('wp-admin')) {
186
+ return { type: 'wordpress-full', version: detectWPVersion() };
187
+ }
188
+ }
189
+
190
+ // 2. Check for theme
191
+ if (fileExists('style.css') && fileExists('functions.php')) {
192
+ const styleContent = readFile('style.css');
193
+ if (styleContent.includes('Theme Name:')) {
194
+ const isBlockTheme = fileExists('theme.json');
195
+ return {
196
+ type: 'wordpress-theme',
197
+ subtype: isBlockTheme ? 'block-theme' : 'classic-theme'
198
+ };
199
+ }
200
+ }
201
+
202
+ // 3. Check for plugin
203
+ const phpFiles = findFiles('*.php');
204
+ for (const file of phpFiles) {
205
+ const content = readFile(file);
206
+ if (content.includes('Plugin Name:')) {
207
+ return { type: 'wordpress-plugin', mainFile: file };
208
+ }
209
+ }
210
+
211
+ // 4. Check for block development
212
+ if (fileExists('block.json')) {
213
+ const packageJson = readFile('package.json');
214
+ if (packageJson.includes('@wordpress/')) {
215
+ return { type: 'wordpress-block' };
216
+ }
217
+ }
218
+
219
+ return { type: 'unknown' };
220
+ }
221
+ ```
222
+
223
+ ## Context Hints
224
+
225
+ Once a WordPress project is detected, provide these context hints to the AI:
226
+
227
+ ### Full Installation
228
+ - WordPress version
229
+ - Active theme location
230
+ - Plugins directory
231
+ - Upload directory
232
+ - Database configuration (read-only)
233
+
234
+ ### Theme
235
+ - Theme type (classic or block)
236
+ - Template hierarchy
237
+ - Asset locations
238
+ - Functions.php hooks
239
+
240
+ ### Plugin
241
+ - Main plugin file
242
+ - Plugin structure
243
+ - Hook priorities
244
+ - Admin vs public code
245
+
246
+ ### Block
247
+ - Block metadata
248
+ - Build configuration
249
+ - WordPress dependencies
250
+ - Editor vs frontend code
251
+