Skip to content

Commit 5351387

Browse files
committed
docs: update README files and add release creation prompt
- Update 24 README.md files with enhanced documentation - Add .github/prompts/create-release.prompt.md for release workflow - Add readme.instructions.md for documentation standards - Complete v1.0.0 release preparation documentation
1 parent c4eb86c commit 5351387

File tree

26 files changed

+1256
-3661
lines changed

26 files changed

+1256
-3661
lines changed
Lines changed: 357 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,357 @@
1+
---
2+
description: Step-by-step guide for creating GitHub releases for the Multi-Block Plugin Scaffold
3+
category: Release Management
4+
type: Prompt
5+
audience: Maintainers
6+
date: 2025-12-10
7+
---
8+
9+
# Create GitHub Release Prompt
10+
11+
This prompt guides you through creating a GitHub release from an existing git tag for the Multi-Block Plugin Scaffold.
12+
13+
## Prerequisites
14+
15+
Before starting, ensure:
16+
17+
- ✅ Git tag exists (check: `git tag -l`)
18+
- ✅ Tag pushed to GitHub (check: `git ls-remote --tags origin`)
19+
- ✅ CHANGELOG.md updated with release notes
20+
- ✅ All release preparation tasks complete
21+
- ✅ Template repository enabled in settings
22+
- ✅ GitHub topics added
23+
24+
## Quick Start
25+
26+
**URL:** https://github.com/lightspeedwp/multi-block-plugin-scaffold/releases/new
27+
28+
**Tag:** v1.0.0 (or your version)
29+
30+
**Title:** `v1.0.0: Multi-Block Plugin Scaffold`
31+
32+
**Description:** Copy from template below
33+
34+
---
35+
36+
## Step-by-Step Instructions
37+
38+
### Step 1: Navigate to Create Release
39+
40+
1. Go to: https://github.com/lightspeedwp/multi-block-plugin-scaffold/releases/new
41+
2. Or: Repository → "Releases" → "Draft a new release"
42+
43+
### Step 2: Select Tag
44+
45+
1. Click "Choose a tag" dropdown
46+
2. Select your version tag: **v1.0.0**
47+
3. Target branch: **main** (auto-selected)
48+
49+
### Step 3: Add Release Title
50+
51+
Format: `v{VERSION}: {PROJECT_NAME}`
52+
53+
**Example:**
54+
```
55+
v1.0.0: Multi-Block Plugin Scaffold
56+
```
57+
58+
### Step 4: Add Release Description
59+
60+
Copy and customize this template:
61+
62+
```markdown
63+
🎉 **Initial Release** - Multi-Block Plugin Scaffold v1.0.0
64+
65+
A comprehensive WordPress plugin scaffold with dual-mode generation, mustache templating, and complete development infrastructure for building modern block plugins.
66+
67+
---
68+
69+
## ✨ Highlights
70+
71+
### Core Features
72+
73+
- **🔧 Dual-Mode Generator** - Template mode (`--in-place`) or output folder mode (default)
74+
- **🎨 Mustache Templating** - 6 transformation filters (upper, lower, pascalCase, camelCase, kebabCase, snakeCase)
75+
- **📦 Example Blocks** - Card, Collection, Slider, and Featured blocks ready to use
76+
- **🧪 130 Unit Tests** - Comprehensive test coverage across 7 test suites
77+
- **🔍 Complete Linting** - ESLint, Stylelint, PHPCS, and PHPStan configured
78+
- **📚 15+ Documentation Files** - Comprehensive guides for all aspects
79+
80+
### WordPress Integration
81+
82+
- Custom Post Types & Taxonomies scaffolding
83+
- Secure Custom Fields (SCF) with local JSON sync
84+
- Block Patterns (7 pre-built patterns)
85+
- Block Templates with automatic assignment
86+
- Block Bindings API support (WordPress 6.5+)
87+
- Block Styles registration
88+
- Options Pages with Settings API
89+
90+
### Developer Experience
91+
92+
- Interactive CLI with JSON mode
93+
- Schema validation for configuration
94+
- Dry-run testing system
95+
- Pre-commit hooks (Husky)
96+
- wp-env integration
97+
- Webpack 5 build system
98+
99+
---
100+
101+
## 🚀 Getting Started
102+
103+
### Using the Template
104+
105+
1. Click the green **"Use this template"** button
106+
2. Create your repository
107+
3. Clone locally: `git clone https://github.com/YOUR_ORG/YOUR_PLUGIN.git`
108+
4. Install dependencies: `npm install && composer install`
109+
5. Run generator: `node scripts/generate-plugin.js --in-place`
110+
111+
### Quick Generation
112+
113+
```bash
114+
# Clone the scaffold
115+
git clone https://github.com/lightspeedwp/multi-block-plugin-scaffold.git my-plugin
116+
cd my-plugin
117+
118+
# Generate plugin (output mode)
119+
node scripts/generate-plugin.js --config plugin-config.json
120+
121+
# Or use interactive mode
122+
node scripts/generate-plugin.js
123+
```
124+
125+
---
126+
127+
## 📋 Requirements
128+
129+
- **WordPress:** 6.5 or higher
130+
- **PHP:** 8.0 or higher
131+
- **Node.js:** 18.x or higher
132+
- **Composer:** 2.x or higher
133+
134+
---
135+
136+
## 📖 Documentation
137+
138+
Complete documentation available in the `docs/` directory:
139+
140+
- **[README.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold#readme)** - Overview and quick start
141+
- **[GENERATE-PLUGIN.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/docs/GENERATE-PLUGIN.md)** - Plugin generation guide
142+
- **[ARCHITECTURE.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/docs/ARCHITECTURE.md)** - Repository structure
143+
- **[BUILD-PROCESS.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/docs/BUILD-PROCESS.md)** - Build system details
144+
- **[TESTING.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/docs/TESTING.md)** - Testing strategies
145+
146+
---
147+
148+
## 🔗 Links
149+
150+
- **Documentation:** https://github.com/lightspeedwp/multi-block-plugin-scaffold/tree/main/docs
151+
- **Issues:** https://github.com/lightspeedwp/multi-block-plugin-scaffold/issues
152+
- **Discussions:** https://github.com/lightspeedwp/multi-block-plugin-scaffold/discussions
153+
- **Changelog:** [CHANGELOG.md](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/CHANGELOG.md)
154+
155+
---
156+
157+
## 🙏 Credits
158+
159+
Developed by [LightSpeed](https://lightspeedwp.agency) for the WordPress community.
160+
161+
---
162+
163+
## 📄 License
164+
165+
GPL-3.0-or-later - See [LICENSE](https://github.com/lightspeedwp/multi-block-plugin-scaffold/blob/main/LICENSE) for details.
166+
```
167+
168+
### Step 5: Configure Release Options
169+
170+
**Set as latest release:**
171+
- ✅ Check this box
172+
173+
**Set as a pre-release:**
174+
- ☐ Leave unchecked (this is a stable release)
175+
176+
**Create a discussion for this release:**
177+
- ☐ Optional - check if you want community discussion
178+
179+
### Step 6: Publish Release
180+
181+
1. Review all information
182+
2. Click **"Publish release"** button
183+
3. Confirm release published
184+
185+
---
186+
187+
## Verification Checklist
188+
189+
After publishing, verify:
190+
191+
- [ ] Release appears at: https://github.com/lightspeedwp/multi-block-plugin-scaffold/releases
192+
- [ ] "Latest" badge is visible
193+
- [ ] Download links work (Source code zip/tar.gz)
194+
- [ ] Release description displays correctly with formatting
195+
- [ ] All documentation links are functional
196+
- [ ] Release shows correct tag (v1.0.0)
197+
- [ ] Target branch is "main"
198+
199+
---
200+
201+
## Alternative: GitHub CLI
202+
203+
If you prefer automation:
204+
205+
```bash
206+
# Install GitHub CLI if needed
207+
brew install gh
208+
209+
# Authenticate
210+
gh auth login
211+
212+
# Create release from tag
213+
gh release create v1.0.0 \
214+
--title "v1.0.0: Multi-Block Plugin Scaffold" \
215+
--notes-file RELEASE_NOTES.md \
216+
--latest
217+
218+
# Or use inline notes
219+
gh release create v1.0.0 \
220+
--title "v1.0.0: Multi-Block Plugin Scaffold" \
221+
--notes "$(cat CHANGELOG.md)" \
222+
--latest
223+
```
224+
225+
---
226+
227+
## Alternative: GitHub API
228+
229+
Using curl with GitHub API:
230+
231+
```bash
232+
# Set variables
233+
GITHUB_TOKEN="your_personal_access_token"
234+
REPO="lightspeedwp/multi-block-plugin-scaffold"
235+
TAG="v1.0.0"
236+
237+
# Create release
238+
curl -X POST \
239+
-H "Accept: application/vnd.github+json" \
240+
-H "Authorization: Bearer $GITHUB_TOKEN" \
241+
https://api.github.com/repos/$REPO/releases \
242+
-d '{
243+
"tag_name": "'"$TAG"'",
244+
"target_commitish": "main",
245+
"name": "v1.0.0: Multi-Block Plugin Scaffold",
246+
"body": "Release notes here...",
247+
"draft": false,
248+
"prerelease": false,
249+
"make_latest": true
250+
}'
251+
```
252+
253+
---
254+
255+
## Troubleshooting
256+
257+
### Issue: Tag not found
258+
259+
**Solution:**
260+
```bash
261+
# Check if tag exists locally
262+
git tag -l
263+
264+
# Check if tag exists on remote
265+
git ls-remote --tags origin
266+
267+
# Push tag if missing
268+
git push origin v1.0.0
269+
```
270+
271+
### Issue: Release fails to create
272+
273+
**Possible causes:**
274+
1. Tag doesn't exist on GitHub
275+
2. Insufficient permissions
276+
3. Release with same tag already exists
277+
278+
**Solution:**
279+
- Verify tag pushed to GitHub
280+
- Check repository permissions (need write access)
281+
- Delete existing release if recreating
282+
283+
### Issue: Markdown not rendering
284+
285+
**Causes:**
286+
- Malformed markdown syntax
287+
- Broken links
288+
- Invalid HTML in description
289+
290+
**Solution:**
291+
- Validate markdown with a linter
292+
- Preview in GitHub's markdown preview
293+
- Remove any raw HTML
294+
295+
---
296+
297+
## Post-Release Tasks
298+
299+
After publishing v1.0.0:
300+
301+
1. **Update todo list** - Mark Task 20 as completed
302+
2. **Announce release** - Share on social media, WordPress Slack
303+
3. **Monitor issues** - Watch for bug reports from early adopters
304+
4. **Plan v1.1.0** - Start collecting feature requests
305+
5. **Update documentation** - Add any post-release notes
306+
307+
---
308+
309+
## Related Files
310+
311+
- [CHANGELOG.md](../../CHANGELOG.md) - Release notes source
312+
- [release.agent.md](../agents/release.agent.md) - Release preparation agent
313+
- [template-repository-settings.json](../template-repository-settings.json) - Repository configuration
314+
- [GOVERNANCE.md](../../docs/GOVERNANCE.md) - Release process policies
315+
316+
---
317+
318+
## Quick Reference Card
319+
320+
| Item | Value |
321+
|------|-------|
322+
| **Release URL** | https://github.com/lightspeedwp/multi-block-plugin-scaffold/releases/new |
323+
| **Tag** | v1.0.0 |
324+
| **Title Format** | `v{VERSION}: {PROJECT_NAME}` |
325+
| **Target Branch** | main |
326+
| **Latest** | ✅ Yes |
327+
| **Pre-release** | ☐ No |
328+
329+
---
330+
331+
## Success Criteria
332+
333+
Release is successful when:
334+
335+
- ✅ Release published and visible
336+
- ✅ "Latest" badge shown
337+
- ✅ Download links functional
338+
- ✅ All documentation accessible
339+
- ✅ Template repository working
340+
- ✅ Topics searchable on GitHub
341+
- ✅ Community can use template
342+
343+
---
344+
345+
## Next Steps
346+
347+
After v1.0.0 release:
348+
349+
1. Monitor feedback and issues
350+
2. Plan v1.0.1 for bug fixes (if needed)
351+
3. Start planning v1.1.0 features
352+
4. Update roadmap based on community input
353+
5. Continue improving documentation
354+
355+
---
356+
357+
**Ready to create the release?** Use this checklist and follow the steps above! 🚀

0 commit comments

Comments
 (0)