@bogomolcompany/bogo 0.1.1 → 0.2.1

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.
Files changed (81) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +178 -35
  3. package/README.ru.md +266 -0
  4. package/dist/cli.js +148 -15
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/add-method.d.ts +3 -0
  7. package/dist/commands/add-method.d.ts.map +1 -0
  8. package/dist/commands/add-method.js +47 -0
  9. package/dist/commands/add-method.js.map +1 -0
  10. package/dist/commands/create-app.d.ts +2 -1
  11. package/dist/commands/create-app.d.ts.map +1 -1
  12. package/dist/commands/create-app.js +2 -2
  13. package/dist/commands/create-app.js.map +1 -1
  14. package/dist/commands/doctor.d.ts +2 -0
  15. package/dist/commands/doctor.d.ts.map +1 -0
  16. package/dist/commands/doctor.js +53 -0
  17. package/dist/commands/doctor.js.map +1 -0
  18. package/dist/commands/generate-module.d.ts +2 -1
  19. package/dist/commands/generate-module.d.ts.map +1 -1
  20. package/dist/commands/generate-module.js +41 -26
  21. package/dist/commands/generate-module.js.map +1 -1
  22. package/dist/commands/interactive.d.ts +3 -0
  23. package/dist/commands/interactive.d.ts.map +1 -0
  24. package/dist/commands/interactive.js +65 -0
  25. package/dist/commands/interactive.js.map +1 -0
  26. package/dist/commands/list-modules.d.ts +2 -0
  27. package/dist/commands/list-modules.d.ts.map +1 -0
  28. package/dist/commands/list-modules.js +36 -0
  29. package/dist/commands/list-modules.js.map +1 -0
  30. package/dist/commands/remove-module.d.ts +5 -0
  31. package/dist/commands/remove-module.d.ts.map +1 -0
  32. package/dist/commands/remove-module.js +99 -0
  33. package/dist/commands/remove-module.js.map +1 -0
  34. package/dist/templates/module.d.ts +15 -7
  35. package/dist/templates/module.d.ts.map +1 -1
  36. package/dist/templates/module.js +51 -74
  37. package/dist/templates/module.js.map +1 -1
  38. package/dist/templates/project.d.ts +2 -1
  39. package/dist/templates/project.d.ts.map +1 -1
  40. package/dist/templates/project.js +85 -17
  41. package/dist/templates/project.js.map +1 -1
  42. package/dist/templates/render-helpers.d.ts +9 -0
  43. package/dist/templates/render-helpers.d.ts.map +1 -0
  44. package/dist/templates/render-helpers.js +78 -0
  45. package/dist/templates/render-helpers.js.map +1 -0
  46. package/dist/utils/config.d.ts.map +1 -1
  47. package/dist/utils/config.js +6 -2
  48. package/dist/utils/config.js.map +1 -1
  49. package/dist/utils/http.d.ts +5 -0
  50. package/dist/utils/http.d.ts.map +1 -0
  51. package/dist/utils/http.js +13 -0
  52. package/dist/utils/http.js.map +1 -0
  53. package/dist/utils/index-path.d.ts +7 -0
  54. package/dist/utils/index-path.d.ts.map +1 -0
  55. package/dist/utils/index-path.js +25 -0
  56. package/dist/utils/index-path.js.map +1 -0
  57. package/dist/utils/io.d.ts +8 -0
  58. package/dist/utils/io.d.ts.map +1 -0
  59. package/dist/utils/io.js +31 -0
  60. package/dist/utils/io.js.map +1 -0
  61. package/dist/utils/method-spec.d.ts +4 -0
  62. package/dist/utils/method-spec.d.ts.map +1 -0
  63. package/dist/utils/method-spec.js +49 -0
  64. package/dist/utils/method-spec.js.map +1 -0
  65. package/dist/utils/parts.d.ts +4 -0
  66. package/dist/utils/parts.d.ts.map +1 -0
  67. package/dist/utils/parts.js +9 -0
  68. package/dist/utils/parts.js.map +1 -0
  69. package/dist/utils/patch-index.d.ts +8 -3
  70. package/dist/utils/patch-index.d.ts.map +1 -1
  71. package/dist/utils/patch-index.js +45 -25
  72. package/dist/utils/patch-index.js.map +1 -1
  73. package/dist/utils/patch-method.d.ts +14 -0
  74. package/dist/utils/patch-method.d.ts.map +1 -0
  75. package/dist/utils/patch-method.js +128 -0
  76. package/dist/utils/patch-method.js.map +1 -0
  77. package/dist/utils/template-loader.d.ts +3 -0
  78. package/dist/utils/template-loader.d.ts.map +1 -0
  79. package/dist/utils/template-loader.js +17 -0
  80. package/dist/utils/template-loader.js.map +1 -0
  81. package/package.json +28 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch-method.js","sourceRoot":"","sources":["../../src/utils/patch-method.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { ModulePart, ModuleTemplateContext } from "../interfaces";
2
+ export declare function renderWithTemplate(part: ModulePart, ctx: ModuleTemplateContext, templatesDir: string | undefined, fallback: (ctx: ModuleTemplateContext) => string): string;
3
+ //# sourceMappingURL=template-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-loader.d.ts","sourceRoot":"","sources":["../../src/utils/template-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGlE,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,qBAAqB,EAC1B,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,MAAM,GAC/C,MAAM,CAWR"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderWithTemplate = renderWithTemplate;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ const render_helpers_1 = require("../templates/render-helpers");
7
+ function renderWithTemplate(part, ctx, templatesDir, fallback) {
8
+ if (!templatesDir) {
9
+ return fallback(ctx);
10
+ }
11
+ const templatePath = (0, path_1.join)(templatesDir, `${part}.template`);
12
+ if (!(0, fs_1.existsSync)(templatePath)) {
13
+ return fallback(ctx);
14
+ }
15
+ return (0, render_helpers_1.applyTemplate)((0, fs_1.readFileSync)(templatePath, "utf-8"), ctx, part);
16
+ }
17
+ //# sourceMappingURL=template-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-loader.js","sourceRoot":"","sources":["../../src/utils/template-loader.ts"],"names":[],"mappings":";;AAKA,gDAgBC;AArBD,2BAA8C;AAC9C,+BAA4B;AAE5B,gEAA4D;AAE5D,SAAgB,kBAAkB,CAChC,IAAgB,EAChB,GAA0B,EAC1B,YAAgC,EAChC,QAAgD;IAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,GAAG,IAAI,WAAW,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAA,eAAU,EAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,IAAA,8BAAa,EAAC,IAAA,iBAAY,EAAC,YAAY,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACvE,CAAC"}
package/package.json CHANGED
@@ -1,11 +1,33 @@
1
1
  {
2
2
  "name": "@bogomolcompany/bogo",
3
+ "version": "0.2.1",
4
+ "description": "CLI to scaffold Express + TypeScript API projects and generate modules (controller, service, dto, routes, validator)",
5
+ "license": "MIT",
6
+ "author": "bogomolcompany",
7
+ "keywords": [
8
+ "express",
9
+ "typescript",
10
+ "cli",
11
+ "scaffold",
12
+ "generator",
13
+ "api",
14
+ "boilerplate",
15
+ "rest-api",
16
+ "express-generator",
17
+ "zod",
18
+ "backend"
19
+ ],
20
+ "homepage": "https://github.com/bogomolcomp/bogo#readme",
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+https://github.com/bogomolcomp/bogo.git"
24
+ },
25
+ "bugs": {
26
+ "url": "https://github.com/bogomolcomp/bogo/issues"
27
+ },
3
28
  "publishConfig": {
4
29
  "access": "public"
5
30
  },
6
- "version": "0.1.1",
7
- "description": "CLI generator for Express API modules",
8
- "license": "MIT",
9
31
  "bin": {
10
32
  "bogo": "./dist/cli.js"
11
33
  },
@@ -16,6 +38,7 @@
16
38
  "scripts": {
17
39
  "build": "tsc",
18
40
  "dev": "ts-node src/cli.ts",
41
+ "test": "vitest run",
19
42
  "prepublishOnly": "npm run build"
20
43
  },
21
44
  "dependencies": {
@@ -24,7 +47,8 @@
24
47
  "devDependencies": {
25
48
  "@types/node": "^22.5.0",
26
49
  "ts-node": "^10.9.2",
27
- "typescript": "^5.5.4"
50
+ "typescript": "^5.5.4",
51
+ "vitest": "^2.0.5"
28
52
  },
29
53
  "engines": {
30
54
  "node": ">=18"