@mailmodo/cli 0.0.1-beta.pr3.5
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/README.md +125 -0
- package/bin/dev.cmd +3 -0
- package/bin/dev.js +5 -0
- package/bin/run.cmd +3 -0
- package/bin/run.js +5 -0
- package/oclif.manifest.json +4 -0
- package/package.json +74 -0
package/README.md
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# mailmodo-cli
|
|
2
|
+
|
|
3
|
+
Email lifecycle automation for the AI-native builder generation.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- **Node.js** v24.14.1
|
|
8
|
+
|
|
9
|
+
## Setup
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
git clone https://github.com/Mailmodo/mailmodo-cli.git
|
|
13
|
+
cd mailmodo-cli
|
|
14
|
+
npm install
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Development
|
|
18
|
+
|
|
19
|
+
### Run in dev mode (without building)
|
|
20
|
+
|
|
21
|
+
```sh
|
|
22
|
+
node ./bin/run.js <command>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Example:
|
|
26
|
+
|
|
27
|
+
```sh
|
|
28
|
+
node ./bin/run.js signup
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Build the project
|
|
32
|
+
|
|
33
|
+
```sh
|
|
34
|
+
npm run build
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Run after build
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
./bin/run.js <command>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Link globally for local testing
|
|
44
|
+
|
|
45
|
+
This registers the `mailmodo` binary on your system so you can use it from anywhere:
|
|
46
|
+
|
|
47
|
+
```sh
|
|
48
|
+
npm link
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Then run commands directly:
|
|
52
|
+
|
|
53
|
+
```sh
|
|
54
|
+
mailmodo signup
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
To unlink:
|
|
58
|
+
|
|
59
|
+
```sh
|
|
60
|
+
npm unlink -g @mailmodo/cli
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Commands
|
|
64
|
+
|
|
65
|
+
### `mailmodo signup`
|
|
66
|
+
|
|
67
|
+
Sign up for Mailmodo. Prompts for an email address interactively.
|
|
68
|
+
|
|
69
|
+
```sh
|
|
70
|
+
mailmodo signup
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### `mailmodo help [COMMAND]`
|
|
74
|
+
|
|
75
|
+
Display help for any command.
|
|
76
|
+
|
|
77
|
+
```sh
|
|
78
|
+
mailmodo help
|
|
79
|
+
mailmodo help signup
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Scripts
|
|
83
|
+
|
|
84
|
+
| Script | Description |
|
|
85
|
+
| --------------- | ------------------------------------ |
|
|
86
|
+
| `npm run build` | Clean `dist/` and compile TypeScript |
|
|
87
|
+
| `npm run lint` | Run ESLint |
|
|
88
|
+
| `npm test` | Run tests with Mocha |
|
|
89
|
+
|
|
90
|
+
## CI/CD & Release Automation
|
|
91
|
+
|
|
92
|
+
### Beta releases (on PR)
|
|
93
|
+
|
|
94
|
+
Every time a pull request targeting `main` is opened or updated, a **beta version** is automatically published to npm. A comment is posted on the PR with install instructions:
|
|
95
|
+
|
|
96
|
+
```sh
|
|
97
|
+
npm install -g @mailmodo/cli@beta
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
This lets anyone on the team test the PR changes without checking out the branch locally.
|
|
101
|
+
|
|
102
|
+
> **Note:** npm publishing requires the `NPM_AUTH_TOKEN_WRITE` secret to be configured in the repo settings. Until then, the publish step will be skipped but all other steps (build, version bump, release) still work.
|
|
103
|
+
|
|
104
|
+
### Automatic versioning (on merge)
|
|
105
|
+
|
|
106
|
+
When a PR is merged into `main`, the version in `package.json` is bumped automatically, a GitHub Release is created, and the new version is published to npm.
|
|
107
|
+
|
|
108
|
+
The bump type is determined by a tag in the **PR title**:
|
|
109
|
+
|
|
110
|
+
| PR title contains | Bump type | Example |
|
|
111
|
+
| ----------------- | --------- | ----------------- |
|
|
112
|
+
| `[major]` | major | `1.2.3` → `2.0.0` |
|
|
113
|
+
| `[minor]` | minor | `1.2.3` → `1.3.0` |
|
|
114
|
+
| `[patch]` | patch | `1.2.3` → `1.2.4` |
|
|
115
|
+
| _(nothing)_ | patch | `1.2.3` → `1.2.4` |
|
|
116
|
+
|
|
117
|
+
**Examples of PR titles:**
|
|
118
|
+
|
|
119
|
+
- `[minor] Add email validation` → minor bump
|
|
120
|
+
- `[major] Rewrite auth flow` → major bump
|
|
121
|
+
- `Fix typo in help text` → patch bump (default)
|
|
122
|
+
|
|
123
|
+
## License
|
|
124
|
+
|
|
125
|
+
MIT
|
package/bin/dev.cmd
ADDED
package/bin/dev.js
ADDED
package/bin/run.cmd
ADDED
package/bin/run.js
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@mailmodo/cli",
|
|
3
|
+
"description": "Email lifecycle automation for the AI-native builder generation.",
|
|
4
|
+
"version": "0.0.1-beta.pr3.5",
|
|
5
|
+
"author": "provishalk",
|
|
6
|
+
"bin": {
|
|
7
|
+
"mailmodo": "bin/run.js"
|
|
8
|
+
},
|
|
9
|
+
"bugs": "https://github.com/Mailmodo/mailmodo-cli/issues",
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"@inquirer/prompts": "^8.3.2",
|
|
12
|
+
"@oclif/core": "^4",
|
|
13
|
+
"@oclif/plugin-help": "^6",
|
|
14
|
+
"@oclif/plugin-plugins": "^5"
|
|
15
|
+
},
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"@eslint/compat": "^1",
|
|
18
|
+
"@oclif/prettier-config": "^0.2.1",
|
|
19
|
+
"@oclif/test": "^4",
|
|
20
|
+
"@types/chai": "^4",
|
|
21
|
+
"@types/mocha": "^10",
|
|
22
|
+
"@types/node": "^18",
|
|
23
|
+
"chai": "^4",
|
|
24
|
+
"eslint": "^9",
|
|
25
|
+
"eslint-config-oclif": "^6",
|
|
26
|
+
"eslint-config-prettier": "^10",
|
|
27
|
+
"mocha": "^11",
|
|
28
|
+
"oclif": "^4",
|
|
29
|
+
"shx": "^0.3.3",
|
|
30
|
+
"ts-node": "^10",
|
|
31
|
+
"typescript": "^5"
|
|
32
|
+
},
|
|
33
|
+
"engines": {
|
|
34
|
+
"node": ">=18.0.0"
|
|
35
|
+
},
|
|
36
|
+
"files": [
|
|
37
|
+
"./bin",
|
|
38
|
+
"./dist",
|
|
39
|
+
"./oclif.manifest.json"
|
|
40
|
+
],
|
|
41
|
+
"homepage": "https://github.com/Mailmodo/mailmodo-cli",
|
|
42
|
+
"keywords": [
|
|
43
|
+
"oclif"
|
|
44
|
+
],
|
|
45
|
+
"license": "MIT",
|
|
46
|
+
"main": "dist/index.js",
|
|
47
|
+
"type": "module",
|
|
48
|
+
"oclif": {
|
|
49
|
+
"bin": "mailmodo",
|
|
50
|
+
"dirname": "mailmodo-cli",
|
|
51
|
+
"commands": "./dist/commands",
|
|
52
|
+
"plugins": [
|
|
53
|
+
"@oclif/plugin-help",
|
|
54
|
+
"@oclif/plugin-plugins"
|
|
55
|
+
],
|
|
56
|
+
"topicSeparator": " ",
|
|
57
|
+
"topics": {
|
|
58
|
+
"hello": {
|
|
59
|
+
"description": "Say hello to the world and others"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"repository": "Mailmodo/mailmodo-cli",
|
|
64
|
+
"scripts": {
|
|
65
|
+
"build": "shx rm -rf dist && tsc -b",
|
|
66
|
+
"lint": "eslint",
|
|
67
|
+
"postpack": "shx rm -f oclif.manifest.json",
|
|
68
|
+
"posttest": "npm run lint",
|
|
69
|
+
"prepack": "oclif manifest && oclif readme",
|
|
70
|
+
"test": "mocha --forbid-only \"test/**/*.test.ts\"",
|
|
71
|
+
"version": "oclif readme && git add README.md"
|
|
72
|
+
},
|
|
73
|
+
"types": "dist/index.d.ts"
|
|
74
|
+
}
|