@geekmidas/cli 0.41.0 → 0.43.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/dist/index.cjs +21 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +21 -11
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
- package/src/docker/templates.ts +11 -6
- package/src/init/generators/models.ts +1 -3
- package/src/init/generators/monorepo.ts +5 -0
- package/src/init/generators/package.ts +4 -7
- package/src/init/templates/api.ts +2 -0
- package/tsconfig.tsbuildinfo +1 -1
package/dist/index.mjs
CHANGED
|
@@ -28,7 +28,7 @@ import prompts from "prompts";
|
|
|
28
28
|
|
|
29
29
|
//#region package.json
|
|
30
30
|
var name = "@geekmidas/cli";
|
|
31
|
-
var version = "0.
|
|
31
|
+
var version = "0.43.0";
|
|
32
32
|
var description = "CLI tools for building Lambda handlers, server applications, and generating OpenAPI specs";
|
|
33
33
|
var private$1 = false;
|
|
34
34
|
var type = "module";
|
|
@@ -3223,7 +3223,7 @@ CMD ["node", "server.mjs"]
|
|
|
3223
3223
|
}
|
|
3224
3224
|
/**
|
|
3225
3225
|
* Generate a Dockerfile for apps with a custom entry point.
|
|
3226
|
-
* Uses
|
|
3226
|
+
* Uses esbuild to bundle the entry point into dist/index.mjs with all dependencies.
|
|
3227
3227
|
* This is used for apps that don't use gkm routes (e.g., Better Auth servers).
|
|
3228
3228
|
* @internal Exported for testing
|
|
3229
3229
|
*/
|
|
@@ -3286,17 +3286,22 @@ RUN if [ -n "$GKM_ENCRYPTED_CREDENTIALS" ]; then \
|
|
|
3286
3286
|
echo "$GKM_CREDENTIALS_IV" > ${appPath}/.gkm/credentials.iv; \
|
|
3287
3287
|
fi
|
|
3288
3288
|
|
|
3289
|
-
# Bundle entry point with
|
|
3289
|
+
# Bundle entry point with esbuild (outputs to dist/index.mjs)
|
|
3290
|
+
# Creates a fully standalone bundle with all dependencies included
|
|
3290
3291
|
# Use define to embed credentials if present
|
|
3291
3292
|
RUN cd ${appPath} && \
|
|
3292
3293
|
if [ -f .gkm/credentials.enc ]; then \
|
|
3293
3294
|
CREDS=$(cat .gkm/credentials.enc) && \
|
|
3294
3295
|
IV=$(cat .gkm/credentials.iv) && \
|
|
3295
|
-
npx
|
|
3296
|
-
--
|
|
3297
|
-
--
|
|
3296
|
+
npx esbuild ${entry} --bundle --platform=node --target=node22 --format=esm \
|
|
3297
|
+
--outfile=dist/index.mjs --packages=bundle \
|
|
3298
|
+
--banner:js='import { createRequire } from "module"; const require = createRequire(import.meta.url);' \
|
|
3299
|
+
--define:__GKM_ENCRYPTED_CREDENTIALS__="'\\"$CREDS\\"'" \
|
|
3300
|
+
--define:__GKM_CREDENTIALS_IV__="'\\"$IV\\"'"; \
|
|
3298
3301
|
else \
|
|
3299
|
-
npx
|
|
3302
|
+
npx esbuild ${entry} --bundle --platform=node --target=node22 --format=esm \
|
|
3303
|
+
--outfile=dist/index.mjs --packages=bundle \
|
|
3304
|
+
--banner:js='import { createRequire } from "module"; const require = createRequire(import.meta.url);'; \
|
|
3300
3305
|
fi
|
|
3301
3306
|
|
|
3302
3307
|
# Stage 4: Production
|
|
@@ -5837,7 +5842,7 @@ function generateModelsPackage(options) {
|
|
|
5837
5842
|
type: "module",
|
|
5838
5843
|
exports: { "./*": "./src/*.ts" },
|
|
5839
5844
|
scripts: { typecheck: "tsc --noEmit" },
|
|
5840
|
-
dependencies: {
|
|
5845
|
+
dependencies: {},
|
|
5841
5846
|
devDependencies: { typescript: "~5.8.2" }
|
|
5842
5847
|
};
|
|
5843
5848
|
const tsConfig = {
|
|
@@ -5977,9 +5982,11 @@ function generateMonorepoFiles(options, _template) {
|
|
|
5977
5982
|
"fmt:check": "biome format .",
|
|
5978
5983
|
...options.deployTarget === "dokploy" ? { deploy: "gkm deploy --provider dokploy --stage production" } : {}
|
|
5979
5984
|
},
|
|
5985
|
+
dependencies: { zod: "~4.1.0" },
|
|
5980
5986
|
devDependencies: {
|
|
5981
5987
|
"@biomejs/biome": "~2.3.0",
|
|
5982
5988
|
"@geekmidas/cli": GEEKMIDAS_VERSIONS["@geekmidas/cli"],
|
|
5989
|
+
esbuild: "~0.27.0",
|
|
5983
5990
|
turbo: "~2.3.0",
|
|
5984
5991
|
typescript: "~5.8.2",
|
|
5985
5992
|
vitest: "~4.0.0"
|
|
@@ -6241,6 +6248,7 @@ export default defineWorkspace({
|
|
|
6241
6248
|
type: 'backend',
|
|
6242
6249
|
path: 'apps/auth',
|
|
6243
6250
|
port: 3002,
|
|
6251
|
+
entry: './src/index.ts',
|
|
6244
6252
|
envParser: './src/config/env#envParser',
|
|
6245
6253
|
logger: './src/config/logger#logger',
|
|
6246
6254
|
},
|
|
@@ -6302,12 +6310,14 @@ const apiTemplate = {
|
|
|
6302
6310
|
"@geekmidas/auth": GEEKMIDAS_VERSIONS["@geekmidas/auth"],
|
|
6303
6311
|
"@hono/node-server": "~1.14.1",
|
|
6304
6312
|
hono: "~4.8.2",
|
|
6305
|
-
pino: "~9.6.0"
|
|
6313
|
+
pino: "~9.6.0",
|
|
6314
|
+
zod: "~4.1.0"
|
|
6306
6315
|
},
|
|
6307
6316
|
devDependencies: {
|
|
6308
6317
|
"@biomejs/biome": "~2.3.0",
|
|
6309
6318
|
"@geekmidas/cli": GEEKMIDAS_VERSIONS["@geekmidas/cli"],
|
|
6310
6319
|
"@types/node": "~22.0.0",
|
|
6320
|
+
esbuild: "~0.27.0",
|
|
6311
6321
|
tsx: "~4.20.0",
|
|
6312
6322
|
turbo: "~2.3.0",
|
|
6313
6323
|
typescript: "~5.8.2",
|
|
@@ -7164,15 +7174,15 @@ function generatePackageJson(options, template) {
|
|
|
7164
7174
|
dependencies$1.pg = "~8.16.0";
|
|
7165
7175
|
devDependencies$1["@types/pg"] = "~8.15.0";
|
|
7166
7176
|
}
|
|
7167
|
-
dependencies$1.zod = "~4.1.0";
|
|
7168
7177
|
if (monorepo) {
|
|
7169
7178
|
delete devDependencies$1["@biomejs/biome"];
|
|
7170
7179
|
delete devDependencies$1.turbo;
|
|
7180
|
+
delete devDependencies$1.esbuild;
|
|
7181
|
+
delete dependencies$1.zod;
|
|
7171
7182
|
delete scripts$1.lint;
|
|
7172
7183
|
delete scripts$1.fmt;
|
|
7173
7184
|
delete scripts$1["fmt:check"];
|
|
7174
7185
|
dependencies$1[`@${name$1}/models`] = "workspace:*";
|
|
7175
|
-
delete dependencies$1.zod;
|
|
7176
7186
|
}
|
|
7177
7187
|
const sortObject = (obj) => Object.fromEntries(Object.entries(obj).sort(([a], [b]) => a.localeCompare(b)));
|
|
7178
7188
|
let packageName = name$1;
|