@adriankulik/create-fullstack-app 1.9.1 → 1.9.3
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/cli/build-date.js +1 -0
- package/cli/index.js +9 -3
- package/package.json +2 -1
- package/templates/frontend/angular/eslint.config.js +8 -13
- package/templates/frontend/angular/karma.conf.js +1 -2
- package/templates/frontend/angular/package-lock.json +4633 -5399
- package/templates/frontend/angular/package.json +22 -25
- package/templates/frontend/angular/src/app/app.component.ts +3 -3
- /package/templates/backend/nodejs/{eslint.config.js → eslint.config.mjs} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = '2026-08-20 21:58:16';
|
package/cli/index.js
CHANGED
|
@@ -8,9 +8,15 @@ const os = require("os");
|
|
|
8
8
|
const { execSync } = require("child_process");
|
|
9
9
|
|
|
10
10
|
async function main() {
|
|
11
|
+
const pkg = require("../package.json");
|
|
12
|
+
let publishDate = "Local build";
|
|
13
|
+
try {
|
|
14
|
+
publishDate = require("./build-date.js") + " (UTC)";
|
|
15
|
+
} catch (e) {}
|
|
16
|
+
|
|
11
17
|
const { asciiArt } = require("./logo");
|
|
12
18
|
console.log(pc.cyan(asciiArt));
|
|
13
|
-
console.log(pc.cyan(
|
|
19
|
+
console.log(pc.cyan(`\nWelcome to create-fullstack-app! (v${pkg.version}, published on ${publishDate})\n`));
|
|
14
20
|
|
|
15
21
|
// Simple argument parsing
|
|
16
22
|
const args = process.argv.slice(2);
|
|
@@ -165,7 +171,7 @@ async function main() {
|
|
|
165
171
|
|
|
166
172
|
// Frontend installation
|
|
167
173
|
console.log(pc.cyan(" Installing frontend dependencies..."));
|
|
168
|
-
execSync("npm
|
|
174
|
+
execSync("npm install --no-audit --no-fund ", { cwd: targetFrontend, stdio: "inherit" });
|
|
169
175
|
|
|
170
176
|
if (backend === "fastapi" || backend === "flask") {
|
|
171
177
|
console.log(pc.cyan(" Setting up backend virtual environment..."));
|
|
@@ -251,7 +257,7 @@ async function main() {
|
|
|
251
257
|
}
|
|
252
258
|
} else if (backend === "nodejs") {
|
|
253
259
|
console.log(pc.cyan(" Installing Node.js backend dependencies..."));
|
|
254
|
-
execSync("npm
|
|
260
|
+
execSync("npm install --no-audit --no-fund ", { cwd: targetBackend, stdio: "inherit" });
|
|
255
261
|
}
|
|
256
262
|
|
|
257
263
|
// 7. Initialize Git repository
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "1.9.
|
|
6
|
+
"version": "1.9.3",
|
|
7
7
|
"description": "A CLI tool for scaffolding a full-stack web application with your choice of frontend and backend technologies.",
|
|
8
8
|
"main": "cli/index.js",
|
|
9
9
|
"bin": {
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"wait-on": "^9.0.10"
|
|
28
28
|
},
|
|
29
29
|
"scripts": {
|
|
30
|
+
"prepublishOnly": "echo \"module.exports = '$(date -u +\"%Y-%m-%d %H:%M:%S\")';\" > cli/build-date.js",
|
|
30
31
|
"test": "echo \"No unit tests specified\" && exit 0",
|
|
31
32
|
"test:e2e": "vitest run tests/e2e.test.js",
|
|
32
33
|
"test:integration": "npx playwright test tests/integration.spec.js"
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
// @ts-check
|
|
2
2
|
const eslint = require("@eslint/js");
|
|
3
3
|
const tseslint = require("typescript-eslint");
|
|
4
|
-
const angular = require("
|
|
5
|
-
const angularTemplate = require("@angular-eslint/eslint-plugin-template");
|
|
6
|
-
const angularTemplateParser = require("@angular-eslint/template-parser");
|
|
4
|
+
const angular = require("angular-eslint");
|
|
7
5
|
|
|
8
6
|
module.exports = tseslint.config(
|
|
9
7
|
{
|
|
@@ -11,10 +9,10 @@ module.exports = tseslint.config(
|
|
|
11
9
|
extends: [
|
|
12
10
|
eslint.configs.recommended,
|
|
13
11
|
...tseslint.configs.recommended,
|
|
12
|
+
...tseslint.configs.stylistic,
|
|
13
|
+
...angular.configs.tsRecommended,
|
|
14
14
|
],
|
|
15
|
-
|
|
16
|
-
"@angular-eslint": angular,
|
|
17
|
-
},
|
|
15
|
+
processor: angular.processInlineTemplates,
|
|
18
16
|
rules: {
|
|
19
17
|
"@angular-eslint/component-selector": [
|
|
20
18
|
"error",
|
|
@@ -24,12 +22,9 @@ module.exports = tseslint.config(
|
|
|
24
22
|
},
|
|
25
23
|
{
|
|
26
24
|
files: ["**/*.html"],
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
parser: angularTemplateParser,
|
|
32
|
-
},
|
|
33
|
-
rules: /** @type {any} */ (angularTemplate.configs["recommended"].rules),
|
|
25
|
+
extends: [
|
|
26
|
+
...angular.configs.templateRecommended,
|
|
27
|
+
],
|
|
28
|
+
rules: {},
|
|
34
29
|
}
|
|
35
30
|
);
|