create-awesome-node-app 0.6.7 → 0.7.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 +8 -7
- package/dist/index.cjs +19 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +19 -6
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/dist/chunk-SIARO2CH.js +0 -123
package/README.md
CHANGED
|
@@ -81,14 +81,14 @@ Explore visually: **[create-awesome-node-app.vercel.app](https://create-awesome-
|
|
|
81
81
|
|
|
82
82
|
## 🚀 Quick Start
|
|
83
83
|
|
|
84
|
-
Use via one‑shot runner (recommended – always latest):
|
|
84
|
+
Use via one‑shot runner (recommended – always latest). Interactive mode runs by default (unless CI):
|
|
85
85
|
|
|
86
86
|
```bash
|
|
87
|
-
npm create awesome-node-app@latest my-app
|
|
87
|
+
npm create awesome-node-app@latest my-app
|
|
88
88
|
# or
|
|
89
|
-
pnpm create awesome-node-app my-app
|
|
89
|
+
pnpm create awesome-node-app my-app
|
|
90
90
|
# or
|
|
91
|
-
yarn create awesome-node-app my-app
|
|
91
|
+
yarn create awesome-node-app my-app
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
Global install (optional):
|
|
@@ -110,7 +110,7 @@ npx create-awesome-node-app my-api \
|
|
|
110
110
|
|
|
111
111
|
## 🧪 Interactive Mode Walkthrough
|
|
112
112
|
|
|
113
|
-
|
|
113
|
+
Interactive flow (default outside CI) lets you:
|
|
114
114
|
|
|
115
115
|
1. Pick a category (Frontend, Backend, Full Stack, Monorepo, Web Extension, UAT...)
|
|
116
116
|
2. Select a template with description & keywords
|
|
@@ -156,7 +156,7 @@ create-awesome-node-app --list-addons
|
|
|
156
156
|
create-awesome-node-app --template react-vite-boilerplate --list-addons
|
|
157
157
|
```
|
|
158
158
|
|
|
159
|
-
Add any extra extension by URL:
|
|
159
|
+
Add any extra extension by URL (non‑interactive example shown):
|
|
160
160
|
|
|
161
161
|
```bash
|
|
162
162
|
create-awesome-node-app my-app \
|
|
@@ -192,7 +192,8 @@ fnm use 22
|
|
|
192
192
|
|
|
193
193
|
| Flag | Description |
|
|
194
194
|
| --------------------------- | ---------------------------------------------- |
|
|
195
|
-
| `--interactive` |
|
|
195
|
+
| `--interactive` | Force interactive (default outside CI) |
|
|
196
|
+
| `--no-interactive` | Disable interactive wizard |
|
|
196
197
|
| `--template <slug\|url>` | Use a known template slug or remote URL |
|
|
197
198
|
| `--addons [list...]` | Space‑separated addon slugs or URLs |
|
|
198
199
|
| `--extend [list...]` | Extra extension URLs (advanced) |
|
package/dist/index.cjs
CHANGED
|
@@ -1925,19 +1925,24 @@ var processInteractiveOptions = async (options) => {
|
|
|
1925
1925
|
}
|
|
1926
1926
|
return nextOptions;
|
|
1927
1927
|
};
|
|
1928
|
+
var resolveInteractiveMode = (options, ci = import_ci_info.isCI) => {
|
|
1929
|
+
const explicit = options.interactive;
|
|
1930
|
+
if (explicit === true) return true;
|
|
1931
|
+
if (explicit === false) return false;
|
|
1932
|
+
return !ci;
|
|
1933
|
+
};
|
|
1928
1934
|
var getCnaOptions = async (options) => {
|
|
1929
|
-
const shouldUseInteractiveMode =
|
|
1935
|
+
const shouldUseInteractiveMode = resolveInteractiveMode(options);
|
|
1930
1936
|
if (shouldUseInteractiveMode) {
|
|
1931
|
-
return processInteractiveOptions(options);
|
|
1932
|
-
} else {
|
|
1933
|
-
return processNonInteractiveOptions(options);
|
|
1937
|
+
return processInteractiveOptions({ ...options, interactive: true });
|
|
1934
1938
|
}
|
|
1939
|
+
return processNonInteractiveOptions(options);
|
|
1935
1940
|
};
|
|
1936
1941
|
|
|
1937
1942
|
// package.json
|
|
1938
1943
|
var package_default = {
|
|
1939
1944
|
name: "create-awesome-node-app",
|
|
1940
|
-
version: "0.
|
|
1945
|
+
version: "0.7.0",
|
|
1941
1946
|
type: "module",
|
|
1942
1947
|
description: "Command line tool to create Node apps with a lot of different templates and extensions.",
|
|
1943
1948
|
license: "MIT",
|
|
@@ -2001,6 +2006,7 @@ var package_default = {
|
|
|
2001
2006
|
},
|
|
2002
2007
|
devDependencies: {
|
|
2003
2008
|
"@create-node-app/eslint-config-ts": "*",
|
|
2009
|
+
"@create-node-app/core": "^0.5.6",
|
|
2004
2010
|
"@types/node": "^24.5.2",
|
|
2005
2011
|
"@types/prompts": "^2.4.9",
|
|
2006
2012
|
"@types/yargs": "^17.0.33",
|
|
@@ -2103,7 +2109,14 @@ var main = async () => {
|
|
|
2103
2109
|
).option(
|
|
2104
2110
|
"--addons [extensions...]",
|
|
2105
2111
|
"specify extensions to apply for the boilerplate generation"
|
|
2106
|
-
).option("--use-yarn", "use yarn instead of npm or pnpm").option("--use-pnpm", "use pnpm instead of yarn or npm").option(
|
|
2112
|
+
).option("--use-yarn", "use yarn instead of npm or pnpm").option("--use-pnpm", "use pnpm instead of yarn or npm").option(
|
|
2113
|
+
"--interactive",
|
|
2114
|
+
"force interactive mode (default outside CI unless --no-interactive)",
|
|
2115
|
+
void 0
|
|
2116
|
+
).option(
|
|
2117
|
+
"--no-interactive",
|
|
2118
|
+
"disable interactive mode (use only flags / non-interactive flow)"
|
|
2119
|
+
).option("--list-templates", "list all available templates").option("--list-addons", "list all available addons").action((providedProjectName) => {
|
|
2107
2120
|
projectName = providedProjectName || projectName;
|
|
2108
2121
|
});
|
|
2109
2122
|
program.parse(process.argv);
|