@programinglive/commiter 1.2.12 → 1.2.17
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/.github/ISSUE_TEMPLATE/bug_report.md +28 -28
- package/.github/ISSUE_TEMPLATE/config.yml +5 -5
- package/.github/ISSUE_TEMPLATE/feature_request.md +20 -20
- package/.github/PULL_REQUEST_TEMPLATE.md +24 -24
- package/.github/workflows/publish.yml +8 -5
- package/CHANGELOG.md +275 -235
- package/CODE_OF_CONDUCT.md +36 -36
- package/LICENSE +21 -21
- package/PUBLISH.md +142 -142
- package/README.md +218 -217
- package/SECURITY.md +30 -30
- package/commitlint.config.cjs +4 -4
- package/docs/CREATE_RELEASES.md +103 -103
- package/{PRD.md → docs/PRD.md} +96 -96
- package/docs/QUICK_RELEASE_GUIDE.md +101 -101
- package/docs/release-notes/RELEASE_NOTES.md +226 -185
- package/index.js +199 -199
- package/netlify.toml +2 -2
- package/package.json +96 -96
- package/scripts/create-releases.js +219 -219
- package/scripts/release.cjs +285 -258
- package/scripts/update-release-notes.cjs +182 -182
- package/web/README.md +79 -79
- package/web/css/style.css +963 -963
- package/web/favicon.svg +10 -10
- package/web/index.html +510 -510
- package/web/js/script.js +256 -256
- package/web/og-image.svg +24 -24
- package/.netlify/netlify.toml +0 -25
- package/.netlify/state.json +0 -3
package/PUBLISH.md
CHANGED
|
@@ -1,142 +1,142 @@
|
|
|
1
|
-
# Publishing to NPM
|
|
2
|
-
|
|
3
|
-
This guide explains how to publish the `@programinglive/commiter` package to npm.
|
|
4
|
-
|
|
5
|
-
## Prerequisites
|
|
6
|
-
|
|
7
|
-
1. **NPM Account**: Create an account at [npmjs.com](https://www.npmjs.com/)
|
|
8
|
-
2. **Login to NPM**: Run `npm login` in your terminal
|
|
9
|
-
3. **Organization Access**: Ensure you have access to the `@programinglive` organization on npm
|
|
10
|
-
|
|
11
|
-
## Publishing Steps
|
|
12
|
-
|
|
13
|
-
### 1. Login to NPM
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npm login
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Enter your npm credentials when prompted.
|
|
20
|
-
|
|
21
|
-
### 2. Verify Package Configuration
|
|
22
|
-
|
|
23
|
-
Check that `package.json` is correctly configured:
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
npm pack --dry-run
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
This shows what files will be included in the package.
|
|
30
|
-
|
|
31
|
-
### 3. Publish the Package
|
|
32
|
-
|
|
33
|
-
For the first publish:
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
npm publish --access public
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
**Note**: The `--access public` flag is required for scoped packages (@programinglive/commiter) to be publicly accessible.
|
|
40
|
-
|
|
41
|
-
### 4. Verify Publication
|
|
42
|
-
|
|
43
|
-
Check your package on npm:
|
|
44
|
-
```
|
|
45
|
-
https://www.npmjs.com/package/@programinglive/commiter
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Releasing New Versions
|
|
49
|
-
|
|
50
|
-
After the initial publish, use the built-in release commands:
|
|
51
|
-
|
|
52
|
-
### Patch Release (1.0.0 → 1.0.1)
|
|
53
|
-
```bash
|
|
54
|
-
npm run release:patch
|
|
55
|
-
git push --follow-tags origin main
|
|
56
|
-
npm publish
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### Minor Release (1.0.0 → 1.1.0)
|
|
60
|
-
```bash
|
|
61
|
-
npm run release:minor
|
|
62
|
-
git push --follow-tags origin main
|
|
63
|
-
npm publish
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### Major Release (1.0.0 → 2.0.0)
|
|
67
|
-
```bash
|
|
68
|
-
npm run release:major
|
|
69
|
-
git push --follow-tags origin main
|
|
70
|
-
npm publish
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
## Automated Release Workflow
|
|
74
|
-
|
|
75
|
-
### Option 1: Manual Publishing (Traditional)
|
|
76
|
-
1. Make changes and commit using conventional commits
|
|
77
|
-
2. Run the appropriate release command
|
|
78
|
-
3. Push to GitHub with tags
|
|
79
|
-
4. Publish to npm
|
|
80
|
-
|
|
81
|
-
Example:
|
|
82
|
-
```bash
|
|
83
|
-
# Make changes
|
|
84
|
-
git add .
|
|
85
|
-
git commit -m "feat(cli): add interactive setup wizard"
|
|
86
|
-
|
|
87
|
-
# Create release
|
|
88
|
-
npm run release:minor
|
|
89
|
-
|
|
90
|
-
# Push to GitHub
|
|
91
|
-
git push --follow-tags origin main
|
|
92
|
-
|
|
93
|
-
# Publish to npm
|
|
94
|
-
npm publish
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
### Option 2: Automated Publishing (Recommended)
|
|
98
|
-
1. Make changes and commit using conventional commits
|
|
99
|
-
2. Run the appropriate release command
|
|
100
|
-
3. Push to GitHub with tags - **npm publishing happens automatically**
|
|
101
|
-
|
|
102
|
-
Example:
|
|
103
|
-
```bash
|
|
104
|
-
# Make changes
|
|
105
|
-
git add .
|
|
106
|
-
git commit -m "feat(cli): add interactive setup wizard"
|
|
107
|
-
|
|
108
|
-
# Create release
|
|
109
|
-
npm run release:minor
|
|
110
|
-
|
|
111
|
-
# Push to GitHub (triggers automatic npm publish)
|
|
112
|
-
git push --follow-tags origin main
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
**Setup Required for Automated Publishing:**
|
|
116
|
-
1. Add `NPM_TOKEN` secret to your GitHub repository
|
|
117
|
-
2. The GitHub Actions workflow (`.github/workflows/publish.yml`) will automatically:
|
|
118
|
-
- Run tests
|
|
119
|
-
- Publish to npm when a tag starting with `v` is pushed
|
|
120
|
-
- Use the `--access public` flag for scoped packages
|
|
121
|
-
|
|
122
|
-
## Unpublishing (Emergency Only)
|
|
123
|
-
|
|
124
|
-
If you need to unpublish a version within 72 hours:
|
|
125
|
-
|
|
126
|
-
```bash
|
|
127
|
-
npm unpublish @programinglive/commiter@1.0.0
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
**Warning**: Unpublishing is permanent and should only be used in emergencies.
|
|
131
|
-
|
|
132
|
-
## Package Visibility
|
|
133
|
-
|
|
134
|
-
- **Public**: Anyone can install and use the package
|
|
135
|
-
- **Open Source**: MIT licensed - users can modify and distribute
|
|
136
|
-
- **Free**: No cost to install or use
|
|
137
|
-
|
|
138
|
-
## Support
|
|
139
|
-
|
|
140
|
-
For issues or questions:
|
|
141
|
-
- GitHub Issues: https://github.com/programinglive/commiter/issues
|
|
142
|
-
- NPM Package: https://www.npmjs.com/package/@programinglive/commiter
|
|
1
|
+
# Publishing to NPM
|
|
2
|
+
|
|
3
|
+
This guide explains how to publish the `@programinglive/commiter` package to npm.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
1. **NPM Account**: Create an account at [npmjs.com](https://www.npmjs.com/)
|
|
8
|
+
2. **Login to NPM**: Run `npm login` in your terminal
|
|
9
|
+
3. **Organization Access**: Ensure you have access to the `@programinglive` organization on npm
|
|
10
|
+
|
|
11
|
+
## Publishing Steps
|
|
12
|
+
|
|
13
|
+
### 1. Login to NPM
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm login
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Enter your npm credentials when prompted.
|
|
20
|
+
|
|
21
|
+
### 2. Verify Package Configuration
|
|
22
|
+
|
|
23
|
+
Check that `package.json` is correctly configured:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npm pack --dry-run
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
This shows what files will be included in the package.
|
|
30
|
+
|
|
31
|
+
### 3. Publish the Package
|
|
32
|
+
|
|
33
|
+
For the first publish:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm publish --access public
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**Note**: The `--access public` flag is required for scoped packages (@programinglive/commiter) to be publicly accessible.
|
|
40
|
+
|
|
41
|
+
### 4. Verify Publication
|
|
42
|
+
|
|
43
|
+
Check your package on npm:
|
|
44
|
+
```
|
|
45
|
+
https://www.npmjs.com/package/@programinglive/commiter
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Releasing New Versions
|
|
49
|
+
|
|
50
|
+
After the initial publish, use the built-in release commands:
|
|
51
|
+
|
|
52
|
+
### Patch Release (1.0.0 → 1.0.1)
|
|
53
|
+
```bash
|
|
54
|
+
npm run release:patch
|
|
55
|
+
git push --follow-tags origin main
|
|
56
|
+
npm publish
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Minor Release (1.0.0 → 1.1.0)
|
|
60
|
+
```bash
|
|
61
|
+
npm run release:minor
|
|
62
|
+
git push --follow-tags origin main
|
|
63
|
+
npm publish
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Major Release (1.0.0 → 2.0.0)
|
|
67
|
+
```bash
|
|
68
|
+
npm run release:major
|
|
69
|
+
git push --follow-tags origin main
|
|
70
|
+
npm publish
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Automated Release Workflow
|
|
74
|
+
|
|
75
|
+
### Option 1: Manual Publishing (Traditional)
|
|
76
|
+
1. Make changes and commit using conventional commits
|
|
77
|
+
2. Run the appropriate release command
|
|
78
|
+
3. Push to GitHub with tags
|
|
79
|
+
4. Publish to npm
|
|
80
|
+
|
|
81
|
+
Example:
|
|
82
|
+
```bash
|
|
83
|
+
# Make changes
|
|
84
|
+
git add .
|
|
85
|
+
git commit -m "feat(cli): add interactive setup wizard"
|
|
86
|
+
|
|
87
|
+
# Create release
|
|
88
|
+
npm run release:minor
|
|
89
|
+
|
|
90
|
+
# Push to GitHub
|
|
91
|
+
git push --follow-tags origin main
|
|
92
|
+
|
|
93
|
+
# Publish to npm
|
|
94
|
+
npm publish
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Option 2: Automated Publishing (Recommended)
|
|
98
|
+
1. Make changes and commit using conventional commits
|
|
99
|
+
2. Run the appropriate release command
|
|
100
|
+
3. Push to GitHub with tags - **npm publishing happens automatically**
|
|
101
|
+
|
|
102
|
+
Example:
|
|
103
|
+
```bash
|
|
104
|
+
# Make changes
|
|
105
|
+
git add .
|
|
106
|
+
git commit -m "feat(cli): add interactive setup wizard"
|
|
107
|
+
|
|
108
|
+
# Create release
|
|
109
|
+
npm run release:minor
|
|
110
|
+
|
|
111
|
+
# Push to GitHub (triggers automatic npm publish)
|
|
112
|
+
git push --follow-tags origin main
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**Setup Required for Automated Publishing:**
|
|
116
|
+
1. Add `NPM_TOKEN` secret to your GitHub repository
|
|
117
|
+
2. The GitHub Actions workflow (`.github/workflows/publish.yml`) will automatically:
|
|
118
|
+
- Run tests
|
|
119
|
+
- Publish to npm when a tag starting with `v` is pushed
|
|
120
|
+
- Use the `--access public` flag for scoped packages
|
|
121
|
+
|
|
122
|
+
## Unpublishing (Emergency Only)
|
|
123
|
+
|
|
124
|
+
If you need to unpublish a version within 72 hours:
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
npm unpublish @programinglive/commiter@1.0.0
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Warning**: Unpublishing is permanent and should only be used in emergencies.
|
|
131
|
+
|
|
132
|
+
## Package Visibility
|
|
133
|
+
|
|
134
|
+
- **Public**: Anyone can install and use the package
|
|
135
|
+
- **Open Source**: MIT licensed - users can modify and distribute
|
|
136
|
+
- **Free**: No cost to install or use
|
|
137
|
+
|
|
138
|
+
## Support
|
|
139
|
+
|
|
140
|
+
For issues or questions:
|
|
141
|
+
- GitHub Issues: https://github.com/programinglive/commiter/issues
|
|
142
|
+
- NPM Package: https://www.npmjs.com/package/@programinglive/commiter
|