create-asaje-go-vue 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/README.md ADDED
@@ -0,0 +1,107 @@
1
+ # create-asaje-go-vue
2
+
3
+ CLI package for scaffolding and running the Asaje Go + Vue boilerplate.
4
+
5
+ ## Commands
6
+
7
+ ### Create a project
8
+
9
+ ```bash
10
+ npx create-asaje-go-vue@latest my-app
11
+ ```
12
+
13
+ Local development:
14
+
15
+ ```bash
16
+ cd cli
17
+ npm install
18
+ node ./bin/create-asaje-go-vue.js my-app
19
+ ```
20
+
21
+ ### Start a project
22
+
23
+ After linking or installing the package globally:
24
+
25
+ ```bash
26
+ asaje start ./my-app
27
+ ```
28
+
29
+ Without global install:
30
+
31
+ ```bash
32
+ npx -p create-asaje-go-vue@latest asaje start ./my-app
33
+ ```
34
+
35
+ ### Check your setup
36
+
37
+ ```bash
38
+ npx -p create-asaje-go-vue@latest asaje doctor ./my-app
39
+ ```
40
+
41
+ ### Validate the package before publish
42
+
43
+ ```bash
44
+ npx -p create-asaje-go-vue@latest asaje publish
45
+ ```
46
+
47
+ ## What `create` does
48
+
49
+ - clones the boilerplate from GitHub with `degit`
50
+ - removes template-only files such as `cli/`
51
+ - asks project setup questions for ports, storage, mail, seeds, and locale
52
+ - writes `asaje.config.json`
53
+ - generates `admin/.env`, `api/.env`, and `realtime-gateway/.env`
54
+ - optionally installs dependencies and starts Docker infrastructure
55
+
56
+ ## What `asaje start` does
57
+
58
+ - validates project structure
59
+ - creates missing `.env` files from examples when possible
60
+ - optionally installs dependencies
61
+ - optionally starts Docker infrastructure
62
+ - starts any combination of `api`, `worker`, `realtime-gateway`, and `admin`
63
+ - supports profiles: `full`, `backend-only`, `frontend-only`, and `custom`
64
+ - streams service logs until you stop with `Ctrl+C`
65
+
66
+ ## What `asaje doctor` does
67
+
68
+ - checks required local tools: `node`, `pnpm`, `go`, `docker`
69
+ - validates the target project structure
70
+ - verifies `.env` files or their corresponding `.env.example` fallbacks
71
+
72
+ ## What `asaje publish` does
73
+
74
+ - runs `npm run check`
75
+ - runs `npm run pack:dry-run`
76
+ - prints the final manual npm release steps
77
+
78
+ ## Useful flags
79
+
80
+ ```bash
81
+ node ./bin/create-asaje-go-vue.js my-app --template asaje379/boilerplate-go-vue --branch main
82
+ node ./bin/create-asaje-go-vue.js my-app --yes --skip-install --skip-infra
83
+ node ./bin/asaje.js start ../my-app --yes --profile backend-only
84
+ node ./bin/asaje.js start ../my-app --yes --profile frontend-only
85
+ node ./bin/asaje.js start ../my-app --yes --skip-admin --skip-worker
86
+ node ./bin/asaje.js doctor ../my-app
87
+ node ./bin/asaje.js publish .
88
+ ```
89
+
90
+ ## Publish checklist
91
+
92
+ ```bash
93
+ npm install
94
+ npm run check
95
+ npm run doctor
96
+ npm run publish:check
97
+ npm run pack:dry-run
98
+ npm publish
99
+ ```
100
+
101
+ ## Notes
102
+
103
+ - default template repo comes from `ASAJE_TEMPLATE_REPO` or falls back to `asaje379/boilerplate-go-vue`
104
+ - default branch comes from `ASAJE_TEMPLATE_BRANCH` or falls back to `main`
105
+ - if the selected branch is missing, the CLI retries `main`, `master`, then `develop`
106
+ - the package currently uses `UNLICENSED`; change that before public distribution if needed
107
+ - OTP email delivery still requires a valid Mailchimp Transactional key for real email sends
package/bin/asaje.js ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+
3
+ import "./create-asaje-go-vue.js";