create-moria 0.3.5 → 0.4.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/.turbo/turbo-build.log +1 -1
- package/dist/index.js +37 -11
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +38 -12
package/.turbo/turbo-build.log
CHANGED
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ import pc from 'picocolors';
|
|
|
17
17
|
import prompts from 'prompts';
|
|
18
18
|
import { writeFileSync, mkdirSync, existsSync } from 'node:fs';
|
|
19
19
|
import { join, resolve } from 'node:path';
|
|
20
|
-
const VERSION = '0.
|
|
20
|
+
const VERSION = '0.4.0';
|
|
21
21
|
export const cli = cac('create-moria');
|
|
22
22
|
// ─── Template file generators ─────────────────────────
|
|
23
23
|
function tsconfigContent() {
|
|
@@ -65,10 +65,10 @@ dist/
|
|
|
65
65
|
.turbo/
|
|
66
66
|
`;
|
|
67
67
|
}
|
|
68
|
-
function moriaConfigTs(db) {
|
|
68
|
+
function moriaConfigTs(db, usePongo = false) {
|
|
69
69
|
const dbConfig = db === 'sqlite'
|
|
70
70
|
? ` adapter: 'sqlite',\n filename: './dev.db',`
|
|
71
|
-
: ` adapter: 'pg',\n url: process.env.DATABASE_URL
|
|
71
|
+
: ` adapter: 'pg',\n url: process.env.DATABASE_URL,${usePongo ? '\n usePongo: true,' : ''}`;
|
|
72
72
|
return `import { defineConfig } from '@moriajs/core';
|
|
73
73
|
|
|
74
74
|
export default defineConfig({
|
|
@@ -84,10 +84,10 @@ ${dbConfig}
|
|
|
84
84
|
});
|
|
85
85
|
`;
|
|
86
86
|
}
|
|
87
|
-
function moriaConfigJs(db) {
|
|
87
|
+
function moriaConfigJs(db, usePongo = false) {
|
|
88
88
|
const dbConfig = db === 'sqlite'
|
|
89
89
|
? ` adapter: 'sqlite',\n filename: './dev.db',`
|
|
90
|
-
: ` adapter: 'pg',\n url: process.env.DATABASE_URL
|
|
90
|
+
: ` adapter: 'pg',\n url: process.env.DATABASE_URL,${usePongo ? '\n usePongo: true,' : ''}`;
|
|
91
91
|
return `/** @type {import('@moriajs/core').MoriaConfig} */
|
|
92
92
|
export default {
|
|
93
93
|
server: {
|
|
@@ -214,12 +214,20 @@ function srcApiUsersTs() {
|
|
|
214
214
|
|
|
215
215
|
import type { FastifyRequest, FastifyReply } from 'fastify';
|
|
216
216
|
|
|
217
|
-
export function GET(request: FastifyRequest<{ Params: { id: string } }>, _reply: FastifyReply) {
|
|
217
|
+
export async function GET(request: FastifyRequest<{ Params: { id: string } }>, _reply: FastifyReply) {
|
|
218
218
|
const { id } = request.params;
|
|
219
|
+
|
|
220
|
+
// Example using the MoriaJS Agnostic DB API
|
|
221
|
+
// This works regardless of the underlying library (Kysely, Pongo, etc.)
|
|
222
|
+
const user = await request.server.db.findOne<{ id: string, name: string, email: string }>('users', { id });
|
|
223
|
+
|
|
224
|
+
if (user) return user;
|
|
225
|
+
|
|
219
226
|
return {
|
|
220
227
|
id,
|
|
221
228
|
name: \`User \${id}\`,
|
|
222
229
|
email: \`user\${id}@example.com\`,
|
|
230
|
+
_source: 'mock',
|
|
223
231
|
};
|
|
224
232
|
}
|
|
225
233
|
`;
|
|
@@ -271,12 +279,19 @@ function srcApiUsersJs() {
|
|
|
271
279
|
* GET /api/users/:id
|
|
272
280
|
*/
|
|
273
281
|
|
|
274
|
-
export function GET(request, _reply) {
|
|
282
|
+
export async function GET(request, _reply) {
|
|
275
283
|
const { id } = request.params;
|
|
284
|
+
|
|
285
|
+
// Example using the MoriaJS Agnostic DB API
|
|
286
|
+
const user = await request.server.db.findOne('users', { id });
|
|
287
|
+
|
|
288
|
+
if (user) return user;
|
|
289
|
+
|
|
276
290
|
return {
|
|
277
291
|
id,
|
|
278
292
|
name: \`User \${id}\`,
|
|
279
293
|
email: \`user\${id}@example.com\`,
|
|
294
|
+
_source: 'mock',
|
|
280
295
|
};
|
|
281
296
|
}
|
|
282
297
|
`;
|
|
@@ -313,7 +328,7 @@ export async function getServerData() {
|
|
|
313
328
|
'File-based routing',
|
|
314
329
|
'SSR + client hydration',
|
|
315
330
|
'Middleware system',
|
|
316
|
-
'Database
|
|
331
|
+
'Agnostic Database (Kysely/Pongo)',
|
|
317
332
|
'JWT authentication',
|
|
318
333
|
],
|
|
319
334
|
};
|
|
@@ -378,7 +393,7 @@ export async function getServerData() {
|
|
|
378
393
|
'File-based routing',
|
|
379
394
|
'SSR + client hydration',
|
|
380
395
|
'Middleware system',
|
|
381
|
-
'Database
|
|
396
|
+
'Agnostic Database (Kysely/Pongo)',
|
|
382
397
|
'JWT authentication',
|
|
383
398
|
],
|
|
384
399
|
};
|
|
@@ -487,6 +502,7 @@ cli
|
|
|
487
502
|
.option('--typescript', 'Use TypeScript (default)')
|
|
488
503
|
.option('--javascript', 'Use JavaScript')
|
|
489
504
|
.option('--db <adapter>', 'Database adapter: pg | sqlite', { default: '' })
|
|
505
|
+
.option('--pongo', 'Use Pongo with PostgreSQL', { default: false })
|
|
490
506
|
.action(async (projectName, options) => {
|
|
491
507
|
console.log();
|
|
492
508
|
console.log(pc.cyan('🏔️ create-moria') + pc.dim(` v${VERSION}`));
|
|
@@ -530,6 +546,14 @@ cli
|
|
|
530
546
|
],
|
|
531
547
|
initial: 0,
|
|
532
548
|
},
|
|
549
|
+
{
|
|
550
|
+
type: (prev) => prev === 'pg' && !options?.db ? 'toggle' : null,
|
|
551
|
+
name: 'usePongo',
|
|
552
|
+
message: 'Use Pongo (MongoDB-like API on Postgres)?',
|
|
553
|
+
initial: true,
|
|
554
|
+
active: 'yes',
|
|
555
|
+
inactive: 'no',
|
|
556
|
+
},
|
|
533
557
|
]);
|
|
534
558
|
const name = projectName ?? answers.projectName;
|
|
535
559
|
if (!name) {
|
|
@@ -540,6 +564,7 @@ cli
|
|
|
540
564
|
const isTS = options?.typescript || answers.language === 'ts' || (!options?.javascript && !answers.language);
|
|
541
565
|
const lang = isTS ? 'ts' : 'js';
|
|
542
566
|
const db = options?.db || answers.database || 'sqlite';
|
|
567
|
+
const usePongo = options?.pongo || answers.usePongo || false;
|
|
543
568
|
const dir = resolve(process.cwd(), name);
|
|
544
569
|
const ext = lang === 'ts' ? 'ts' : 'js';
|
|
545
570
|
if (existsSync(dir)) {
|
|
@@ -550,7 +575,7 @@ cli
|
|
|
550
575
|
console.log(pc.green(`Creating MoriaJS project in ${pc.bold(dir)}`));
|
|
551
576
|
console.log(pc.dim(` Template : ${template}`));
|
|
552
577
|
console.log(pc.dim(` Language : ${isTS ? 'TypeScript' : 'JavaScript'}`));
|
|
553
|
-
console.log(pc.dim(` Database : ${db}`));
|
|
578
|
+
console.log(pc.dim(` Database : ${db}${usePongo ? ' (with Pongo)' : ''}`));
|
|
554
579
|
console.log();
|
|
555
580
|
// ─── Create directory structure ─────────────────────
|
|
556
581
|
if (template === 'default') {
|
|
@@ -595,7 +620,7 @@ cli
|
|
|
595
620
|
};
|
|
596
621
|
write(join(dir, 'package.json'), JSON.stringify(pkgJson, null, 2) + '\n');
|
|
597
622
|
// ─── Config ─────────────────────────────────────────
|
|
598
|
-
write(join(dir, `moria.config.${ext}`), isTS ? moriaConfigTs(db) : moriaConfigJs(db));
|
|
623
|
+
write(join(dir, `moria.config.${ext}`), isTS ? moriaConfigTs(db, usePongo) : moriaConfigJs(db, usePongo));
|
|
599
624
|
// ─── tsconfig.json ──────────────────────────────────
|
|
600
625
|
if (isTS) {
|
|
601
626
|
write(join(dir, 'tsconfig.json'), tsconfigContent() + '\n');
|
|
@@ -641,4 +666,5 @@ cli
|
|
|
641
666
|
});
|
|
642
667
|
cli.version(VERSION);
|
|
643
668
|
cli.help();
|
|
669
|
+
cli.parse();
|
|
644
670
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -19,7 +19,7 @@ import prompts from 'prompts';
|
|
|
19
19
|
import { writeFileSync, mkdirSync, existsSync } from 'node:fs';
|
|
20
20
|
import { join, resolve } from 'node:path';
|
|
21
21
|
|
|
22
|
-
const VERSION = '0.
|
|
22
|
+
const VERSION = '0.4.0';
|
|
23
23
|
|
|
24
24
|
export const cli = cac('create-moria');
|
|
25
25
|
|
|
@@ -76,11 +76,11 @@ dist/
|
|
|
76
76
|
`;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
function moriaConfigTs(db: string): string {
|
|
79
|
+
function moriaConfigTs(db: string, usePongo: boolean = false): string {
|
|
80
80
|
const dbConfig =
|
|
81
81
|
db === 'sqlite'
|
|
82
82
|
? ` adapter: 'sqlite',\n filename: './dev.db',`
|
|
83
|
-
: ` adapter: 'pg',\n url: process.env.DATABASE_URL
|
|
83
|
+
: ` adapter: 'pg',\n url: process.env.DATABASE_URL,${usePongo ? '\n usePongo: true,' : ''}`;
|
|
84
84
|
return `import { defineConfig } from '@moriajs/core';
|
|
85
85
|
|
|
86
86
|
export default defineConfig({
|
|
@@ -97,11 +97,11 @@ ${dbConfig}
|
|
|
97
97
|
`;
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
function moriaConfigJs(db: string): string {
|
|
100
|
+
function moriaConfigJs(db: string, usePongo: boolean = false): string {
|
|
101
101
|
const dbConfig =
|
|
102
102
|
db === 'sqlite'
|
|
103
103
|
? ` adapter: 'sqlite',\n filename: './dev.db',`
|
|
104
|
-
: ` adapter: 'pg',\n url: process.env.DATABASE_URL
|
|
104
|
+
: ` adapter: 'pg',\n url: process.env.DATABASE_URL,${usePongo ? '\n usePongo: true,' : ''}`;
|
|
105
105
|
return `/** @type {import('@moriajs/core').MoriaConfig} */
|
|
106
106
|
export default {
|
|
107
107
|
server: {
|
|
@@ -236,12 +236,20 @@ function srcApiUsersTs(): string {
|
|
|
236
236
|
|
|
237
237
|
import type { FastifyRequest, FastifyReply } from 'fastify';
|
|
238
238
|
|
|
239
|
-
export function GET(request: FastifyRequest<{ Params: { id: string } }>, _reply: FastifyReply) {
|
|
239
|
+
export async function GET(request: FastifyRequest<{ Params: { id: string } }>, _reply: FastifyReply) {
|
|
240
240
|
const { id } = request.params;
|
|
241
|
+
|
|
242
|
+
// Example using the MoriaJS Agnostic DB API
|
|
243
|
+
// This works regardless of the underlying library (Kysely, Pongo, etc.)
|
|
244
|
+
const user = await request.server.db.findOne<{ id: string, name: string, email: string }>('users', { id });
|
|
245
|
+
|
|
246
|
+
if (user) return user;
|
|
247
|
+
|
|
241
248
|
return {
|
|
242
249
|
id,
|
|
243
250
|
name: \`User \${id}\`,
|
|
244
251
|
email: \`user\${id}@example.com\`,
|
|
252
|
+
_source: 'mock',
|
|
245
253
|
};
|
|
246
254
|
}
|
|
247
255
|
`;
|
|
@@ -297,12 +305,19 @@ function srcApiUsersJs(): string {
|
|
|
297
305
|
* GET /api/users/:id
|
|
298
306
|
*/
|
|
299
307
|
|
|
300
|
-
export function GET(request, _reply) {
|
|
308
|
+
export async function GET(request, _reply) {
|
|
301
309
|
const { id } = request.params;
|
|
310
|
+
|
|
311
|
+
// Example using the MoriaJS Agnostic DB API
|
|
312
|
+
const user = await request.server.db.findOne('users', { id });
|
|
313
|
+
|
|
314
|
+
if (user) return user;
|
|
315
|
+
|
|
302
316
|
return {
|
|
303
317
|
id,
|
|
304
318
|
name: \`User \${id}\`,
|
|
305
319
|
email: \`user\${id}@example.com\`,
|
|
320
|
+
_source: 'mock',
|
|
306
321
|
};
|
|
307
322
|
}
|
|
308
323
|
`;
|
|
@@ -341,7 +356,7 @@ export async function getServerData() {
|
|
|
341
356
|
'File-based routing',
|
|
342
357
|
'SSR + client hydration',
|
|
343
358
|
'Middleware system',
|
|
344
|
-
'Database
|
|
359
|
+
'Agnostic Database (Kysely/Pongo)',
|
|
345
360
|
'JWT authentication',
|
|
346
361
|
],
|
|
347
362
|
};
|
|
@@ -407,7 +422,7 @@ export async function getServerData() {
|
|
|
407
422
|
'File-based routing',
|
|
408
423
|
'SSR + client hydration',
|
|
409
424
|
'Middleware system',
|
|
410
|
-
'Database
|
|
425
|
+
'Agnostic Database (Kysely/Pongo)',
|
|
411
426
|
'JWT authentication',
|
|
412
427
|
],
|
|
413
428
|
};
|
|
@@ -523,7 +538,8 @@ cli
|
|
|
523
538
|
.option('--typescript', 'Use TypeScript (default)')
|
|
524
539
|
.option('--javascript', 'Use JavaScript')
|
|
525
540
|
.option('--db <adapter>', 'Database adapter: pg | sqlite', { default: '' })
|
|
526
|
-
.
|
|
541
|
+
.option('--pongo', 'Use Pongo with PostgreSQL', { default: false })
|
|
542
|
+
.action(async (projectName?: string, options?: Record<string, any>) => {
|
|
527
543
|
console.log();
|
|
528
544
|
console.log(pc.cyan('🏔️ create-moria') + pc.dim(` v${VERSION}`));
|
|
529
545
|
console.log(pc.dim(' The MoriaJS project scaffolder'));
|
|
@@ -567,6 +583,14 @@ cli
|
|
|
567
583
|
],
|
|
568
584
|
initial: 0,
|
|
569
585
|
},
|
|
586
|
+
{
|
|
587
|
+
type: (prev) => prev === 'pg' && !options?.db ? 'toggle' : null,
|
|
588
|
+
name: 'usePongo',
|
|
589
|
+
message: 'Use Pongo (MongoDB-like API on Postgres)?',
|
|
590
|
+
initial: true,
|
|
591
|
+
active: 'yes',
|
|
592
|
+
inactive: 'no',
|
|
593
|
+
},
|
|
570
594
|
]);
|
|
571
595
|
|
|
572
596
|
const name = projectName ?? answers.projectName;
|
|
@@ -579,6 +603,7 @@ cli
|
|
|
579
603
|
const isTS = (options?.typescript as boolean) || answers.language === 'ts' || (!options?.javascript && !answers.language);
|
|
580
604
|
const lang = isTS ? 'ts' : 'js';
|
|
581
605
|
const db = (options?.db as string) || answers.database || 'sqlite';
|
|
606
|
+
const usePongo = (options?.pongo as boolean) || answers.usePongo || false;
|
|
582
607
|
const dir = resolve(process.cwd(), name);
|
|
583
608
|
const ext = lang === 'ts' ? 'ts' : 'js';
|
|
584
609
|
|
|
@@ -591,7 +616,7 @@ cli
|
|
|
591
616
|
console.log(pc.green(`Creating MoriaJS project in ${pc.bold(dir)}`));
|
|
592
617
|
console.log(pc.dim(` Template : ${template}`));
|
|
593
618
|
console.log(pc.dim(` Language : ${isTS ? 'TypeScript' : 'JavaScript'}`));
|
|
594
|
-
console.log(pc.dim(` Database : ${db}`));
|
|
619
|
+
console.log(pc.dim(` Database : ${db}${usePongo ? ' (with Pongo)' : ''}`));
|
|
595
620
|
console.log();
|
|
596
621
|
|
|
597
622
|
// ─── Create directory structure ─────────────────────
|
|
@@ -649,7 +674,7 @@ cli
|
|
|
649
674
|
// ─── Config ─────────────────────────────────────────
|
|
650
675
|
write(
|
|
651
676
|
join(dir, `moria.config.${ext}`),
|
|
652
|
-
isTS ? moriaConfigTs(db) : moriaConfigJs(db)
|
|
677
|
+
isTS ? moriaConfigTs(db, usePongo) : moriaConfigJs(db, usePongo)
|
|
653
678
|
);
|
|
654
679
|
|
|
655
680
|
// ─── tsconfig.json ──────────────────────────────────
|
|
@@ -728,3 +753,4 @@ cli
|
|
|
728
753
|
|
|
729
754
|
cli.version(VERSION);
|
|
730
755
|
cli.help();
|
|
756
|
+
cli.parse();
|