@hamjimin/xplat-back 0.3.0 → 0.5.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/bin/xplat-back CHANGED
@@ -1,2 +1,64 @@
1
1
  #!/usr/bin/env node
2
- require('../dist/cli/index.js');
2
+
3
+ // Directly invoke initializeProject to ensure CLI runs when called from the bin entry.
4
+ const { initializeProject } = require('../dist/cli/init.js');
5
+
6
+ const args = process.argv.slice(2);
7
+ const config = {};
8
+
9
+ // Parse CLI options
10
+ for (let i = 0; i < args.length; i++) {
11
+ const arg = args[i];
12
+
13
+ switch (arg) {
14
+ case '--port':
15
+ case '-p':
16
+ config.port = args[++i];
17
+ break;
18
+ case '--cors':
19
+ case '-c':
20
+ config.corsOrigins = args[++i];
21
+ break;
22
+ case '--router-dir':
23
+ case '-r':
24
+ config.routerDirectory = args[++i];
25
+ break;
26
+ case '--router-path':
27
+ config.routerBasePath = args[++i];
28
+ break;
29
+ case '--help':
30
+ case '-h':
31
+ console.log(`
32
+ xplat-back CLI
33
+
34
+ Usage:
35
+ xplat-back [options] [project-name]
36
+
37
+ Options:
38
+ -p, --port <port> 서버 포트 (기본값: 4000)
39
+ -c, --cors <origins> CORS 허용 origins (쉼표로 구분, 기본값: http://localhost:3000)
40
+ -r, --router-dir <directory> 라우터 디렉토리 (기본값: src/restapi)
41
+ --router-path <path> 라우터 base path (기본값: /restapi)
42
+ -h, --help 도움말 출력
43
+
44
+ Examples:
45
+ xplat-back
46
+ xplat-back my-project
47
+ xplat-back --port 3000 --cors "http://localhost:3000,http://localhost:5173"
48
+ `);
49
+ process.exit(0);
50
+ break;
51
+ default:
52
+ if (!arg.startsWith('-')) {
53
+ config.projectName = arg;
54
+ }
55
+ }
56
+ }
57
+
58
+ initializeProject(config).catch((error) => {
59
+ console.error('❌ 초기화 중 오류가 발생했습니다:', error.message);
60
+ if (process.env.DEBUG) {
61
+ console.error(error);
62
+ }
63
+ process.exit(1);
64
+ });
package/dist/cli/index.js CHANGED
@@ -73,6 +73,5 @@ Examples:
73
73
  `);
74
74
  }
75
75
  // CLI 실행
76
- if (require.main === module) {
77
- main();
78
- }
76
+ // bin 파일에서 require 불러올 때도 실행되도록 main() 직접 호출
77
+ main();
package/package.json CHANGED
@@ -1,12 +1,16 @@
1
1
  {
2
2
  "name": "@hamjimin/xplat-back",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "Express + TypeScript 백엔드 스캐폴딩 도구 (zium-backend 기반)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
+ "publishConfig": {
8
+ "access": "public"
9
+ },
7
10
  "bin": {
8
11
  "xplat-back": "./bin/xplat-back"
9
12
  },
13
+
10
14
  "files": [
11
15
  "dist",
12
16
  "bin",