@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.
- package/augment-extensions/domain-rules/wordpress/README.md +163 -0
- package/augment-extensions/domain-rules/wordpress/module.json +32 -0
- package/augment-extensions/domain-rules/wordpress/rules/coding-standards.md +617 -0
- package/augment-extensions/domain-rules/wordpress/rules/directory-structure.md +270 -0
- package/augment-extensions/domain-rules/wordpress/rules/file-patterns.md +423 -0
- package/augment-extensions/domain-rules/wordpress/rules/gutenberg-blocks.md +493 -0
- package/augment-extensions/domain-rules/wordpress/rules/performance.md +568 -0
- package/augment-extensions/domain-rules/wordpress/rules/plugin-development.md +510 -0
- package/augment-extensions/domain-rules/wordpress/rules/project-detection.md +251 -0
- package/augment-extensions/domain-rules/wordpress/rules/rest-api.md +501 -0
- package/augment-extensions/domain-rules/wordpress/rules/security.md +564 -0
- package/augment-extensions/domain-rules/wordpress/rules/theme-development.md +388 -0
- package/augment-extensions/domain-rules/wordpress/rules/woocommerce.md +441 -0
- package/augment-extensions/domain-rules/wordpress-plugin/README.md +139 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/ajax-plugin.md +1599 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/custom-post-type-plugin.md +1727 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block-plugin.md +428 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block.md +422 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/mvc-plugin.md +1623 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/object-oriented-plugin.md +1343 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/rest-endpoint.md +734 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/settings-page-plugin.md +1350 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/simple-procedural-plugin.md +503 -0
- package/augment-extensions/domain-rules/wordpress-plugin/examples/singleton-plugin.md +971 -0
- package/augment-extensions/domain-rules/wordpress-plugin/module.json +53 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/activation-hooks.md +770 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/admin-interface.md +874 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/ajax-handlers.md +629 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/asset-management.md +559 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/context-providers.md +709 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/cron-jobs.md +736 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/database-management.md +1057 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/documentation-standards.md +463 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/frontend-functionality.md +478 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/gutenberg-blocks.md +818 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/internationalization.md +416 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/migration.md +667 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/performance-optimization.md +878 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-architecture.md +693 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-structure.md +352 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/rest-api.md +818 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/scaffolding-workflow.md +624 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/security-best-practices.md +866 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/testing-patterns.md +1165 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/testing.md +414 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/vscode-integration.md +751 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/woocommerce-integration.md +949 -0
- package/augment-extensions/domain-rules/wordpress-plugin/rules/wordpress-org-submission.md +458 -0
- package/augment-extensions/examples/gutenberg-block-plugin/README.md +101 -0
- package/augment-extensions/examples/gutenberg-block-plugin/examples/testimonial-block.md +428 -0
- package/augment-extensions/examples/gutenberg-block-plugin/module.json +40 -0
- package/augment-extensions/examples/rest-api-plugin/README.md +98 -0
- package/augment-extensions/examples/rest-api-plugin/examples/task-manager-api.md +1299 -0
- package/augment-extensions/examples/rest-api-plugin/module.json +40 -0
- package/augment-extensions/examples/woocommerce-extension/README.md +98 -0
- package/augment-extensions/examples/woocommerce-extension/examples/product-customizer.md +763 -0
- package/augment-extensions/examples/woocommerce-extension/module.json +40 -0
- package/augment-extensions/workflows/wordpress-plugin/README.md +232 -0
- package/augment-extensions/workflows/wordpress-plugin/ai-prompts.md +839 -0
- package/augment-extensions/workflows/wordpress-plugin/bead-decomposition-patterns.md +854 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/complete-plugin-example.md +540 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/custom-post-type-example.md +1083 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/feature-addition-workflow.md +669 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/plugin-creation-workflow.md +597 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/secure-form-handler-example.md +925 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/security-audit-workflow.md +752 -0
- package/augment-extensions/workflows/wordpress-plugin/examples/wordpress-org-submission-workflow.md +773 -0
- package/augment-extensions/workflows/wordpress-plugin/module.json +49 -0
- package/augment-extensions/workflows/wordpress-plugin/rules/best-practices.md +942 -0
- package/augment-extensions/workflows/wordpress-plugin/rules/development-workflow.md +702 -0
- package/augment-extensions/workflows/wordpress-plugin/rules/submission-workflow.md +728 -0
- package/augment-extensions/workflows/wordpress-plugin/rules/testing-workflow.md +775 -0
- package/cli/dist/cli.js +5 -1
- package/cli/dist/cli.js.map +1 -1
- package/cli/dist/commands/show.d.ts.map +1 -1
- package/cli/dist/commands/show.js +41 -0
- package/cli/dist/commands/show.js.map +1 -1
- package/modules.md +52 -0
- package/package.json +1 -1
package/augment-extensions/workflows/wordpress-plugin/examples/wordpress-org-submission-workflow.md
ADDED
|
@@ -0,0 +1,773 @@
|
|
|
1
|
+
# WordPress.org Submission Workflow Example
|
|
2
|
+
|
|
3
|
+
This example demonstrates the complete workflow for submitting a WordPress plugin to the WordPress.org Plugin Directory using OpenSpec and Beads.
|
|
4
|
+
|
|
5
|
+
## Scenario
|
|
6
|
+
|
|
7
|
+
Submitting the "Simple Contact Form" plugin to WordPress.org after completing development and security audit.
|
|
8
|
+
|
|
9
|
+
## Plugin Context
|
|
10
|
+
|
|
11
|
+
**Plugin**: Simple Contact Form
|
|
12
|
+
**Version**: 1.0.0
|
|
13
|
+
**Status**: Development complete, security audit passed
|
|
14
|
+
**Goal**: Get approved and published on WordPress.org
|
|
15
|
+
|
|
16
|
+
## Workflow Steps
|
|
17
|
+
|
|
18
|
+
### Step 1: Create OpenSpec Submission Spec
|
|
19
|
+
|
|
20
|
+
**File**: `openspec/specs/submission/wordpress-org.md`
|
|
21
|
+
|
|
22
|
+
```markdown
|
|
23
|
+
---
|
|
24
|
+
id: submission/wordpress-org
|
|
25
|
+
status: active
|
|
26
|
+
relatedTasks: []
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# WordPress.org Plugin Submission
|
|
30
|
+
|
|
31
|
+
## Overview
|
|
32
|
+
Submit Simple Contact Form plugin to WordPress.org Plugin Directory.
|
|
33
|
+
|
|
34
|
+
## Requirements
|
|
35
|
+
|
|
36
|
+
### Pre-Submission Requirements
|
|
37
|
+
- Plugin is complete and tested
|
|
38
|
+
- Security audit passed
|
|
39
|
+
- Code follows WordPress Coding Standards
|
|
40
|
+
- Documentation is complete
|
|
41
|
+
- readme.txt is properly formatted
|
|
42
|
+
- All assets are prepared
|
|
43
|
+
|
|
44
|
+
### Submission Requirements
|
|
45
|
+
- Create WordPress.org account
|
|
46
|
+
- Prepare plugin ZIP file
|
|
47
|
+
- Submit via WordPress.org submission form
|
|
48
|
+
- Respond to review feedback promptly
|
|
49
|
+
|
|
50
|
+
### Post-Approval Requirements
|
|
51
|
+
- Set up SVN repository
|
|
52
|
+
- Commit plugin files to trunk
|
|
53
|
+
- Tag first release
|
|
54
|
+
- Upload assets (banner, icon, screenshots)
|
|
55
|
+
- Monitor support forum
|
|
56
|
+
|
|
57
|
+
## Submission Checklist
|
|
58
|
+
|
|
59
|
+
### Code Quality
|
|
60
|
+
- [ ] Follows WordPress Coding Standards (WPCS)
|
|
61
|
+
- [ ] No PHP errors or warnings
|
|
62
|
+
- [ ] All functions documented (PHPDoc)
|
|
63
|
+
- [ ] No debug code or console.log statements
|
|
64
|
+
|
|
65
|
+
### Security
|
|
66
|
+
- [ ] All forms have nonce verification
|
|
67
|
+
- [ ] All output is escaped
|
|
68
|
+
- [ ] All input is sanitized
|
|
69
|
+
- [ ] All database queries use prepared statements
|
|
70
|
+
- [ ] Capability checks in place
|
|
71
|
+
|
|
72
|
+
### Functionality
|
|
73
|
+
- [ ] All features work as expected
|
|
74
|
+
- [ ] Works with latest WordPress version
|
|
75
|
+
- [ ] Works with minimum supported version
|
|
76
|
+
- [ ] Compatible with common themes
|
|
77
|
+
- [ ] No JavaScript errors
|
|
78
|
+
|
|
79
|
+
### Documentation
|
|
80
|
+
- [ ] readme.txt properly formatted
|
|
81
|
+
- [ ] Installation instructions clear
|
|
82
|
+
- [ ] FAQ section complete
|
|
83
|
+
- [ ] Changelog up to date
|
|
84
|
+
- [ ] Screenshots included
|
|
85
|
+
|
|
86
|
+
### Licensing
|
|
87
|
+
- [ ] Plugin is GPL-2.0+ or compatible
|
|
88
|
+
- [ ] All third-party libraries are GPL-compatible
|
|
89
|
+
- [ ] License file included
|
|
90
|
+
- [ ] Copyright notices in place
|
|
91
|
+
|
|
92
|
+
### Assets
|
|
93
|
+
- [ ] Banner images (772x250, 1544x500)
|
|
94
|
+
- [ ] Icon images (128x128, 256x256)
|
|
95
|
+
- [ ] Screenshots (at least 2-3)
|
|
96
|
+
- [ ] All images optimized
|
|
97
|
+
|
|
98
|
+
## Timeline Expectations
|
|
99
|
+
|
|
100
|
+
- Submission to initial review: 1-14 days (typically 3-7 days)
|
|
101
|
+
- Follow-up reviews: 1-7 days
|
|
102
|
+
- Total approval time: 1-4 weeks
|
|
103
|
+
- After approval: Plugin appears immediately
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Step 2: Create Beads Tasks for Submission
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# Create epic for WordPress.org submission
|
|
110
|
+
bd create "Submit Simple Contact Form to WordPress.org" -p 0 --type epic --label wordpress-org --label submission
|
|
111
|
+
# Returns: bd-sub
|
|
112
|
+
|
|
113
|
+
# Pre-submission preparation
|
|
114
|
+
bd create "Run final WPCS check" -p 0 --parent bd-sub --label preparation
|
|
115
|
+
# Returns: bd-sub.1
|
|
116
|
+
|
|
117
|
+
bd create "Validate readme.txt format" -p 0 --parent bd-sub --label preparation
|
|
118
|
+
# Returns: bd-sub.2
|
|
119
|
+
|
|
120
|
+
bd create "Create plugin banner images" -p 0 --parent bd-sub --label assets
|
|
121
|
+
# Returns: bd-sub.3
|
|
122
|
+
|
|
123
|
+
bd create "Create plugin icon images" -p 0 --parent bd-sub --label assets
|
|
124
|
+
# Returns: bd-sub.4
|
|
125
|
+
|
|
126
|
+
bd create "Take plugin screenshots" -p 0 --parent bd-sub --label assets
|
|
127
|
+
# Returns: bd-sub.5
|
|
128
|
+
|
|
129
|
+
bd create "Optimize all images" -p 0 --parent bd-sub --label assets
|
|
130
|
+
# Returns: bd-sub.6
|
|
131
|
+
|
|
132
|
+
bd create "Create plugin ZIP file" -p 0 --parent bd-sub --label preparation
|
|
133
|
+
# Returns: bd-sub.7
|
|
134
|
+
|
|
135
|
+
# Submission
|
|
136
|
+
bd create "Create WordPress.org account" -p 1 --parent bd-sub --label submission
|
|
137
|
+
# Returns: bd-sub.8
|
|
138
|
+
|
|
139
|
+
bd create "Submit plugin via WordPress.org form" -p 1 --parent bd-sub --label submission
|
|
140
|
+
# Returns: bd-sub.9
|
|
141
|
+
|
|
142
|
+
bd create "Wait for initial review" -p 1 --parent bd-sub --label submission
|
|
143
|
+
# Returns: bd-sub.10
|
|
144
|
+
|
|
145
|
+
bd create "Respond to review feedback" -p 1 --parent bd-sub --label submission
|
|
146
|
+
# Returns: bd-sub.11
|
|
147
|
+
|
|
148
|
+
# Post-approval
|
|
149
|
+
bd create "Set up SVN repository" -p 2 --parent bd-sub --label post-approval
|
|
150
|
+
# Returns: bd-sub.12
|
|
151
|
+
|
|
152
|
+
bd create "Commit plugin files to trunk" -p 2 --parent bd-sub --label post-approval
|
|
153
|
+
# Returns: bd-sub.13
|
|
154
|
+
|
|
155
|
+
bd create "Tag version 1.0.0 release" -p 2 --parent bd-sub --label post-approval
|
|
156
|
+
# Returns: bd-sub.14
|
|
157
|
+
|
|
158
|
+
bd create "Upload assets to SVN" -p 2 --parent bd-sub --label post-approval
|
|
159
|
+
# Returns: bd-sub.15
|
|
160
|
+
|
|
161
|
+
bd create "Verify plugin appears on WordPress.org" -p 2 --parent bd-sub --label post-approval
|
|
162
|
+
# Returns: bd-sub.16
|
|
163
|
+
|
|
164
|
+
# Documentation
|
|
165
|
+
bd create "Create submission documentation" -p 2 --parent bd-sub --label documentation
|
|
166
|
+
# Returns: bd-sub.17
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Step 3: Add Task Dependencies
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
# Assets can be created in parallel
|
|
173
|
+
bd dep add bd-sub.6 bd-sub.3
|
|
174
|
+
bd dep add bd-sub.6 bd-sub.4
|
|
175
|
+
bd dep add bd-sub.6 bd-sub.5
|
|
176
|
+
|
|
177
|
+
# ZIP depends on WPCS check and readme validation
|
|
178
|
+
bd dep add bd-sub.7 bd-sub.1
|
|
179
|
+
bd dep add bd-sub.7 bd-sub.2
|
|
180
|
+
|
|
181
|
+
# Submission depends on ZIP and account
|
|
182
|
+
bd dep add bd-sub.9 bd-sub.7
|
|
183
|
+
bd dep add bd-sub.9 bd-sub.8
|
|
184
|
+
|
|
185
|
+
# Review feedback depends on submission
|
|
186
|
+
bd dep add bd-sub.10 bd-sub.9
|
|
187
|
+
bd dep add bd-sub.11 bd-sub.10
|
|
188
|
+
|
|
189
|
+
# SVN setup depends on approval (after feedback)
|
|
190
|
+
bd dep add bd-sub.12 bd-sub.11
|
|
191
|
+
|
|
192
|
+
# SVN operations are sequential
|
|
193
|
+
bd dep add bd-sub.13 bd-sub.12
|
|
194
|
+
bd dep add bd-sub.14 bd-sub.13
|
|
195
|
+
bd dep add bd-sub.15 bd-sub.14
|
|
196
|
+
bd dep add bd-sub.16 bd-sub.15
|
|
197
|
+
|
|
198
|
+
# Documentation depends on completion
|
|
199
|
+
bd dep add bd-sub.17 bd-sub.16
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Step 4: Pre-Submission Preparation
|
|
203
|
+
|
|
204
|
+
#### Task bd-sub.1: Run Final WPCS Check
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
bd update bd-sub.1 --status in_progress
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
**Run WPCS**:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
vendor/bin/phpcs --standard=WordPress --extensions=php --report=summary .
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**Output**:
|
|
217
|
+
|
|
218
|
+
```
|
|
219
|
+
PHP CODE SNIFFER REPORT SUMMARY
|
|
220
|
+
----------------------------------------------------------------------
|
|
221
|
+
FILE ERRORS WARNINGS
|
|
222
|
+
----------------------------------------------------------------------
|
|
223
|
+
/simple-contact-form/includes/class-contact-form.php 0 0
|
|
224
|
+
/simple-contact-form/admin/class-admin.php 0 0
|
|
225
|
+
/simple-contact-form/public/class-public.php 0 0
|
|
226
|
+
----------------------------------------------------------------------
|
|
227
|
+
A TOTAL OF 0 ERRORS AND 0 WARNINGS WERE FOUND IN 15 FILES
|
|
228
|
+
----------------------------------------------------------------------
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
bd comment bd-sub.1 "WPCS check passed. No errors or warnings found. Code is compliant."
|
|
233
|
+
bd close bd-sub.1
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
#### Task bd-sub.2: Validate readme.txt
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
bd update bd-sub.2 --status in_progress
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
**Use WordPress.org readme validator**:
|
|
243
|
+
|
|
244
|
+
1. Go to https://wordpress.org/plugins/developers/readme-validator/
|
|
245
|
+
2. Paste readme.txt content
|
|
246
|
+
3. Click "Validate"
|
|
247
|
+
|
|
248
|
+
**Ensure readme.txt has all required sections**:
|
|
249
|
+
|
|
250
|
+
```
|
|
251
|
+
=== Simple Contact Form ===
|
|
252
|
+
Contributors: yourname
|
|
253
|
+
Tags: contact form, form, email, ajax
|
|
254
|
+
Requires at least: 6.0
|
|
255
|
+
Tested up to: 6.4
|
|
256
|
+
Requires PHP: 7.4
|
|
257
|
+
Stable tag: 1.0.0
|
|
258
|
+
License: GPLv2 or later
|
|
259
|
+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
|
260
|
+
|
|
261
|
+
Display a simple contact form with admin management.
|
|
262
|
+
|
|
263
|
+
== Description ==
|
|
264
|
+
|
|
265
|
+
Simple Contact Form allows you to add a contact form to your WordPress site with just a shortcode. Features include:
|
|
266
|
+
|
|
267
|
+
* Easy shortcode: [simple_contact_form]
|
|
268
|
+
* Admin page to view submissions
|
|
269
|
+
* Email notifications
|
|
270
|
+
* AJAX form submission
|
|
271
|
+
* Custom fields support
|
|
272
|
+
* Rate limiting to prevent spam
|
|
273
|
+
|
|
274
|
+
== Installation ==
|
|
275
|
+
|
|
276
|
+
1. Upload the plugin files to `/wp-content/plugins/simple-contact-form`
|
|
277
|
+
2. Activate the plugin through the 'Plugins' menu in WordPress
|
|
278
|
+
3. Add the shortcode [simple_contact_form] to any page or post
|
|
279
|
+
4. Configure settings under Tools > Contact Form
|
|
280
|
+
|
|
281
|
+
== Frequently Asked Questions ==
|
|
282
|
+
|
|
283
|
+
= How do I display the contact form? =
|
|
284
|
+
|
|
285
|
+
Use the shortcode [simple_contact_form] in any page or post.
|
|
286
|
+
|
|
287
|
+
= Where do I view submissions? =
|
|
288
|
+
|
|
289
|
+
Go to Tools > Contact Messages in the WordPress admin.
|
|
290
|
+
|
|
291
|
+
= Can I customize the form fields? =
|
|
292
|
+
|
|
293
|
+
Yes! Go to Tools > Contact Form > Custom Fields to add your own fields.
|
|
294
|
+
|
|
295
|
+
== Screenshots ==
|
|
296
|
+
|
|
297
|
+
1. Frontend contact form
|
|
298
|
+
2. Admin submissions list
|
|
299
|
+
3. Custom fields management
|
|
300
|
+
4. Email notification settings
|
|
301
|
+
|
|
302
|
+
== Changelog ==
|
|
303
|
+
|
|
304
|
+
= 1.0.0 =
|
|
305
|
+
* Initial release
|
|
306
|
+
* Contact form with name, email, subject, message
|
|
307
|
+
* Admin page to view submissions
|
|
308
|
+
* Email notifications
|
|
309
|
+
* AJAX submission
|
|
310
|
+
* Custom fields support
|
|
311
|
+
* Rate limiting
|
|
312
|
+
|
|
313
|
+
== Upgrade Notice ==
|
|
314
|
+
|
|
315
|
+
= 1.0.0 =
|
|
316
|
+
Initial release of Simple Contact Form.
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
```bash
|
|
320
|
+
bd comment bd-sub.2 "readme.txt validated successfully. All required sections present and properly formatted."
|
|
321
|
+
bd close bd-sub.2
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
#### Task bd-sub.3-6: Create and Optimize Assets
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
bd update bd-sub.3 bd-sub.4 bd-sub.5 --status in_progress
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
**Create banner images**:
|
|
331
|
+
- `banner-772x250.png` (for plugin page)
|
|
332
|
+
- `banner-1544x500.png` (for high-DPI displays)
|
|
333
|
+
|
|
334
|
+
**Create icon images**:
|
|
335
|
+
- `icon-128x128.png` (for plugin directory)
|
|
336
|
+
- `icon-256x256.png` (for high-DPI displays)
|
|
337
|
+
|
|
338
|
+
**Take screenshots**:
|
|
339
|
+
- Screenshot 1: Frontend contact form
|
|
340
|
+
- Screenshot 2: Admin submissions list
|
|
341
|
+
- Screenshot 3: Custom fields management
|
|
342
|
+
|
|
343
|
+
**Optimize images**:
|
|
344
|
+
|
|
345
|
+
```bash
|
|
346
|
+
# Install image optimization tools
|
|
347
|
+
npm install -g imagemin-cli imagemin-pngquant
|
|
348
|
+
|
|
349
|
+
# Optimize all images
|
|
350
|
+
imagemin assets/*.png --out-dir=assets --plugin=pngquant
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
```bash
|
|
354
|
+
bd comment bd-sub.3 "Created banner images (772x250 and 1544x500)"
|
|
355
|
+
bd comment bd-sub.4 "Created icon images (128x128 and 256x256)"
|
|
356
|
+
bd comment bd-sub.5 "Captured 3 screenshots of plugin features"
|
|
357
|
+
bd close bd-sub.3 bd-sub.4 bd-sub.5
|
|
358
|
+
|
|
359
|
+
bd update bd-sub.6 --status in_progress
|
|
360
|
+
bd comment bd-sub.6 "Optimized all images. Total size reduced by 45%."
|
|
361
|
+
bd close bd-sub.6
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
#### Task bd-sub.7: Create Plugin ZIP
|
|
365
|
+
|
|
366
|
+
```bash
|
|
367
|
+
bd ready # Shows bd-sub.7 is ready
|
|
368
|
+
bd update bd-sub.7 --status in_progress
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
**Create ZIP file**:
|
|
372
|
+
|
|
373
|
+
```bash
|
|
374
|
+
# Navigate to plugins directory
|
|
375
|
+
cd /path/to/wp-content/plugins
|
|
376
|
+
|
|
377
|
+
# Create ZIP (exclude development files)
|
|
378
|
+
zip -r simple-contact-form.zip simple-contact-form \
|
|
379
|
+
-x "*.git*" \
|
|
380
|
+
-x "*node_modules*" \
|
|
381
|
+
-x "*vendor*" \
|
|
382
|
+
-x "*.DS_Store" \
|
|
383
|
+
-x "*tests*" \
|
|
384
|
+
-x "*assets*" \
|
|
385
|
+
-x "*.md" \
|
|
386
|
+
-x "composer.*" \
|
|
387
|
+
-x "package.*" \
|
|
388
|
+
-x "phpunit.*"
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
**Verify ZIP contents**:
|
|
392
|
+
|
|
393
|
+
```bash
|
|
394
|
+
unzip -l simple-contact-form.zip
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
**Expected structure**:
|
|
398
|
+
|
|
399
|
+
```
|
|
400
|
+
simple-contact-form/
|
|
401
|
+
├── simple-contact-form.php
|
|
402
|
+
├── readme.txt
|
|
403
|
+
├── uninstall.php
|
|
404
|
+
├── includes/
|
|
405
|
+
├── admin/
|
|
406
|
+
├── public/
|
|
407
|
+
└── languages/
|
|
408
|
+
```
|
|
409
|
+
|
|
410
|
+
```bash
|
|
411
|
+
bd comment bd-sub.7 "Created plugin ZIP file (245 KB). Verified contents - all required files included, development files excluded."
|
|
412
|
+
bd close bd-sub.7
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
### Step 5: Submission
|
|
416
|
+
|
|
417
|
+
#### Task bd-sub.8: Create WordPress.org Account
|
|
418
|
+
|
|
419
|
+
```bash
|
|
420
|
+
bd update bd-sub.8 --status in_progress
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
1. Go to https://login.wordpress.org/register
|
|
424
|
+
2. Create account with username and email
|
|
425
|
+
3. Verify email address
|
|
426
|
+
4. Log in to WordPress.org
|
|
427
|
+
|
|
428
|
+
```bash
|
|
429
|
+
bd comment bd-sub.8 "Created WordPress.org account and verified email."
|
|
430
|
+
bd close bd-sub.8
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
#### Task bd-sub.9: Submit Plugin
|
|
434
|
+
|
|
435
|
+
```bash
|
|
436
|
+
bd ready # Shows bd-sub.9 is ready
|
|
437
|
+
bd update bd-sub.9 --status in_progress
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
**Submission process**:
|
|
441
|
+
|
|
442
|
+
1. Go to https://wordpress.org/plugins/developers/add/
|
|
443
|
+
2. Upload `simple-contact-form.zip`
|
|
444
|
+
3. Fill in plugin details:
|
|
445
|
+
- **Plugin Name**: Simple Contact Form
|
|
446
|
+
- **Plugin Description**: A simple contact form with admin management and custom fields support
|
|
447
|
+
- **Plugin URL**: (leave blank for now)
|
|
448
|
+
4. Agree to guidelines
|
|
449
|
+
5. Click "Submit Plugin"
|
|
450
|
+
|
|
451
|
+
**Confirmation email received**:
|
|
452
|
+
|
|
453
|
+
```
|
|
454
|
+
Subject: [WordPress Plugin Directory] Simple Contact Form
|
|
455
|
+
|
|
456
|
+
Thank you for uploading Simple Contact Form to the WordPress Plugin Directory.
|
|
457
|
+
|
|
458
|
+
Your plugin has been added to the review queue. You will receive an email when
|
|
459
|
+
the review is complete. This typically takes 1-14 days.
|
|
460
|
+
|
|
461
|
+
In the meantime, please review the Plugin Guidelines:
|
|
462
|
+
https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/
|
|
463
|
+
|
|
464
|
+
Ticket URL: https://wordpress.org/support/plugin/simple-contact-form/
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
```bash
|
|
468
|
+
bd comment bd-sub.9 "Plugin submitted successfully. Received confirmation email. Ticket URL: https://wordpress.org/support/plugin/simple-contact-form/"
|
|
469
|
+
bd close bd-sub.9
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
#### Task bd-sub.10: Wait for Initial Review
|
|
473
|
+
|
|
474
|
+
```bash
|
|
475
|
+
bd update bd-sub.10 --status in_progress
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
**Day 5 - Review email received**:
|
|
479
|
+
|
|
480
|
+
```
|
|
481
|
+
Subject: [WordPress Plugin Directory] Simple Contact Form - Approved
|
|
482
|
+
|
|
483
|
+
Congratulations! Your plugin has been approved for the WordPress.org Plugin Directory.
|
|
484
|
+
|
|
485
|
+
Your SVN repository is ready:
|
|
486
|
+
https://plugins.svn.wordpress.org/simple-contact-form/
|
|
487
|
+
|
|
488
|
+
Next steps:
|
|
489
|
+
1. Check out the SVN repository
|
|
490
|
+
2. Add your plugin files to the trunk directory
|
|
491
|
+
3. Tag your first release
|
|
492
|
+
4. Upload assets (banner, icon, screenshots) to the assets directory
|
|
493
|
+
|
|
494
|
+
Your plugin will appear on WordPress.org once you commit files to trunk and tag a release.
|
|
495
|
+
|
|
496
|
+
Documentation: https://developer.wordpress.org/plugins/wordpress-org/how-to-use-subversion/
|
|
497
|
+
```
|
|
498
|
+
|
|
499
|
+
```bash
|
|
500
|
+
bd comment bd-sub.10 "Plugin approved! Received SVN repository URL. Review took 5 days."
|
|
501
|
+
bd close bd-sub.10
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
#### Task bd-sub.11: Respond to Review Feedback
|
|
505
|
+
|
|
506
|
+
```bash
|
|
507
|
+
# In this case, plugin was approved on first review
|
|
508
|
+
bd update bd-sub.11 --status in_progress
|
|
509
|
+
bd comment bd-sub.11 "No feedback to address - plugin approved on first review."
|
|
510
|
+
bd close bd-sub.11
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
### Step 6: Post-Approval SVN Setup
|
|
514
|
+
|
|
515
|
+
#### Task bd-sub.12: Set Up SVN Repository
|
|
516
|
+
|
|
517
|
+
```bash
|
|
518
|
+
bd ready # Shows bd-sub.12 is ready
|
|
519
|
+
bd update bd-sub.12 --status in_progress
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
**Check out SVN repository**:
|
|
523
|
+
|
|
524
|
+
```bash
|
|
525
|
+
# Create local directory
|
|
526
|
+
mkdir -p ~/svn-repos
|
|
527
|
+
cd ~/svn-repos
|
|
528
|
+
|
|
529
|
+
# Check out repository
|
|
530
|
+
svn co https://plugins.svn.wordpress.org/simple-contact-form simple-contact-form
|
|
531
|
+
|
|
532
|
+
# Navigate to repository
|
|
533
|
+
cd simple-contact-form
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
**Repository structure**:
|
|
537
|
+
|
|
538
|
+
```
|
|
539
|
+
simple-contact-form/
|
|
540
|
+
├── trunk/ # Development version
|
|
541
|
+
├── tags/ # Released versions
|
|
542
|
+
└── assets/ # Plugin assets (banner, icon, screenshots)
|
|
543
|
+
```
|
|
544
|
+
|
|
545
|
+
```bash
|
|
546
|
+
bd comment bd-sub.12 "SVN repository checked out successfully. Repository structure verified."
|
|
547
|
+
bd close bd-sub.12
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
#### Task bd-sub.13: Commit Files to Trunk
|
|
551
|
+
|
|
552
|
+
```bash
|
|
553
|
+
bd update bd-sub.13 --status in_progress
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
**Copy plugin files to trunk**:
|
|
557
|
+
|
|
558
|
+
```bash
|
|
559
|
+
# Copy all plugin files to trunk
|
|
560
|
+
cp -r /path/to/wp-content/plugins/simple-contact-form/* trunk/
|
|
561
|
+
|
|
562
|
+
# Add files to SVN
|
|
563
|
+
cd trunk
|
|
564
|
+
svn add --force * --auto-props --parents --depth infinity -q
|
|
565
|
+
|
|
566
|
+
# Commit to trunk
|
|
567
|
+
svn ci -m "Initial commit of Simple Contact Form v1.0.0"
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
```bash
|
|
571
|
+
bd comment bd-sub.13 "Committed all plugin files to trunk. Revision: r2891234"
|
|
572
|
+
bd close bd-sub.13
|
|
573
|
+
```
|
|
574
|
+
|
|
575
|
+
#### Task bd-sub.14: Tag Release
|
|
576
|
+
|
|
577
|
+
```bash
|
|
578
|
+
bd update bd-sub.14 --status in_progress
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
**Create version tag**:
|
|
582
|
+
|
|
583
|
+
```bash
|
|
584
|
+
# Navigate to repository root
|
|
585
|
+
cd ~/svn-repos/simple-contact-form
|
|
586
|
+
|
|
587
|
+
# Copy trunk to tags/1.0.0
|
|
588
|
+
svn cp trunk tags/1.0.0
|
|
589
|
+
|
|
590
|
+
# Commit tag
|
|
591
|
+
svn ci -m "Tagging version 1.0.0"
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
```bash
|
|
595
|
+
bd comment bd-sub.14 "Tagged version 1.0.0. Revision: r2891235"
|
|
596
|
+
bd close bd-sub.14
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
#### Task bd-sub.15: Upload Assets
|
|
600
|
+
|
|
601
|
+
```bash
|
|
602
|
+
bd update bd-sub.15 --status in_progress
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
**Copy assets to SVN**:
|
|
606
|
+
|
|
607
|
+
```bash
|
|
608
|
+
# Copy assets
|
|
609
|
+
cp /path/to/assets/banner-*.png assets/
|
|
610
|
+
cp /path/to/assets/icon-*.png assets/
|
|
611
|
+
cp /path/to/assets/screenshot-*.png assets/
|
|
612
|
+
|
|
613
|
+
# Add and commit
|
|
614
|
+
svn add assets/*
|
|
615
|
+
svn ci -m "Add plugin assets (banner, icon, screenshots)"
|
|
616
|
+
```
|
|
617
|
+
|
|
618
|
+
```bash
|
|
619
|
+
bd comment bd-sub.15 "Uploaded all assets to SVN. Banner, icon, and 3 screenshots committed."
|
|
620
|
+
bd close bd-sub.15
|
|
621
|
+
```
|
|
622
|
+
|
|
623
|
+
#### Task bd-sub.16: Verify Plugin on WordPress.org
|
|
624
|
+
|
|
625
|
+
```bash
|
|
626
|
+
bd update bd-sub.16 --status in_progress
|
|
627
|
+
```
|
|
628
|
+
|
|
629
|
+
**Check plugin page**:
|
|
630
|
+
|
|
631
|
+
1. Go to https://wordpress.org/plugins/simple-contact-form/
|
|
632
|
+
2. Verify:
|
|
633
|
+
- ✅ Plugin appears in directory
|
|
634
|
+
- ✅ Banner displays correctly
|
|
635
|
+
- ✅ Icon displays correctly
|
|
636
|
+
- ✅ Screenshots display correctly
|
|
637
|
+
- ✅ readme.txt content displays correctly
|
|
638
|
+
- ✅ Download button works
|
|
639
|
+
- ✅ Version shows as 1.0.0
|
|
640
|
+
|
|
641
|
+
```bash
|
|
642
|
+
bd comment bd-sub.16 "Plugin verified on WordPress.org. All assets display correctly. Plugin is live!"
|
|
643
|
+
bd close bd-sub.16
|
|
644
|
+
```
|
|
645
|
+
|
|
646
|
+
### Step 7: Documentation
|
|
647
|
+
|
|
648
|
+
#### Task bd-sub.17: Create Submission Documentation
|
|
649
|
+
|
|
650
|
+
```bash
|
|
651
|
+
bd update bd-sub.17 --status in_progress
|
|
652
|
+
```
|
|
653
|
+
|
|
654
|
+
**File**: `SUBMISSION-NOTES.md`
|
|
655
|
+
|
|
656
|
+
```markdown
|
|
657
|
+
# WordPress.org Submission Notes
|
|
658
|
+
|
|
659
|
+
## Submission Details
|
|
660
|
+
|
|
661
|
+
- **Submission Date**: 2024-01-20
|
|
662
|
+
- **Approval Date**: 2024-01-25
|
|
663
|
+
- **Review Time**: 5 days
|
|
664
|
+
- **Plugin URL**: https://wordpress.org/plugins/simple-contact-form/
|
|
665
|
+
- **SVN URL**: https://plugins.svn.wordpress.org/simple-contact-form/
|
|
666
|
+
|
|
667
|
+
## Timeline
|
|
668
|
+
|
|
669
|
+
- Day 0: Plugin submitted
|
|
670
|
+
- Day 5: Plugin approved
|
|
671
|
+
- Day 5: SVN repository set up
|
|
672
|
+
- Day 5: Files committed and tagged
|
|
673
|
+
- Day 5: Plugin live on WordPress.org
|
|
674
|
+
|
|
675
|
+
## Review Feedback
|
|
676
|
+
|
|
677
|
+
No issues found. Plugin approved on first review.
|
|
678
|
+
|
|
679
|
+
## SVN Commands Reference
|
|
680
|
+
|
|
681
|
+
### Update from SVN
|
|
682
|
+
```bash
|
|
683
|
+
svn up
|
|
684
|
+
```
|
|
685
|
+
|
|
686
|
+
### Commit changes
|
|
687
|
+
```bash
|
|
688
|
+
svn ci -m "Commit message"
|
|
689
|
+
```
|
|
690
|
+
|
|
691
|
+
### Tag new version
|
|
692
|
+
```bash
|
|
693
|
+
svn cp trunk tags/1.1.0
|
|
694
|
+
svn ci -m "Tagging version 1.1.0"
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
### Update assets
|
|
698
|
+
```bash
|
|
699
|
+
svn add assets/new-asset.png
|
|
700
|
+
svn ci -m "Update assets"
|
|
701
|
+
```
|
|
702
|
+
|
|
703
|
+
## Post-Submission Checklist
|
|
704
|
+
|
|
705
|
+
- [x] Plugin appears on WordPress.org
|
|
706
|
+
- [x] Assets display correctly
|
|
707
|
+
- [x] Download works
|
|
708
|
+
- [x] Installation instructions clear
|
|
709
|
+
- [ ] Monitor support forum daily
|
|
710
|
+
- [ ] Respond to reviews
|
|
711
|
+
- [ ] Plan next release
|
|
712
|
+
```
|
|
713
|
+
|
|
714
|
+
```bash
|
|
715
|
+
bd comment bd-sub.17 "Created submission documentation with timeline, SVN commands, and post-submission checklist."
|
|
716
|
+
bd close bd-sub.17
|
|
717
|
+
bd close bd-sub
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
## AI Agent Workflow
|
|
721
|
+
|
|
722
|
+
### Initial Prompt
|
|
723
|
+
|
|
724
|
+
```
|
|
725
|
+
Submit the Simple Contact Form plugin to WordPress.org.
|
|
726
|
+
|
|
727
|
+
Pre-submission tasks:
|
|
728
|
+
- Run final WPCS check
|
|
729
|
+
- Validate readme.txt format
|
|
730
|
+
- Create banner images (772x250, 1544x500)
|
|
731
|
+
- Create icon images (128x128, 256x256)
|
|
732
|
+
- Take screenshots (at least 3)
|
|
733
|
+
- Optimize all images
|
|
734
|
+
- Create plugin ZIP file
|
|
735
|
+
|
|
736
|
+
Submission process:
|
|
737
|
+
- Create WordPress.org account (if needed)
|
|
738
|
+
- Submit plugin via WordPress.org form
|
|
739
|
+
- Wait for review
|
|
740
|
+
- Respond to any feedback
|
|
741
|
+
|
|
742
|
+
Post-approval tasks:
|
|
743
|
+
- Set up SVN repository
|
|
744
|
+
- Commit files to trunk
|
|
745
|
+
- Tag version 1.0.0
|
|
746
|
+
- Upload assets
|
|
747
|
+
- Verify plugin appears on WordPress.org
|
|
748
|
+
|
|
749
|
+
Document the entire process with timeline and SVN commands.
|
|
750
|
+
```
|
|
751
|
+
|
|
752
|
+
### Implementation Approach
|
|
753
|
+
|
|
754
|
+
1. **Create OpenSpec submission spec** with requirements and checklist
|
|
755
|
+
2. **Break down into Beads tasks** with clear dependencies
|
|
756
|
+
3. **Prepare all assets** before submission
|
|
757
|
+
4. **Submit and wait patiently** for review
|
|
758
|
+
5. **Respond promptly** to any feedback
|
|
759
|
+
6. **Set up SVN correctly** after approval
|
|
760
|
+
7. **Verify everything works** on WordPress.org
|
|
761
|
+
8. **Document process** for future releases
|
|
762
|
+
|
|
763
|
+
## Key Takeaways
|
|
764
|
+
|
|
765
|
+
- **Preparation is critical** - ensure everything is ready before submitting
|
|
766
|
+
- **readme.txt format** must be exact - use validator
|
|
767
|
+
- **Assets matter** - good banner and icon improve visibility
|
|
768
|
+
- **Review time varies** - typically 3-7 days, can be up to 14 days
|
|
769
|
+
- **SVN is required** - learn basic SVN commands
|
|
770
|
+
- **First impression counts** - thorough preparation leads to faster approval
|
|
771
|
+
- **Documentation helps** - document process for future updates
|
|
772
|
+
- **Support forum** - monitor and respond to user questions promptly
|
|
773
|
+
|