@venizia/ignis-docs 0.0.8 → 0.2.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.
Files changed (180) hide show
  1. package/README.md +7 -7
  2. package/content/best-practices/api-usage-examples.md +15 -12
  3. package/content/best-practices/architectural-patterns.md +70 -78
  4. package/content/best-practices/architecture-decisions.md +91 -60
  5. package/content/best-practices/code-style-standards/advanced-patterns.md +56 -44
  6. package/content/best-practices/code-style-standards/constants-configuration.md +11 -11
  7. package/content/best-practices/code-style-standards/control-flow.md +5 -2
  8. package/content/best-practices/code-style-standards/documentation.md +13 -13
  9. package/content/best-practices/code-style-standards/function-patterns.md +9 -10
  10. package/content/best-practices/code-style-standards/index.md +1 -1
  11. package/content/best-practices/code-style-standards/naming-conventions.md +10 -8
  12. package/content/best-practices/code-style-standards/route-definitions.md +30 -12
  13. package/content/best-practices/code-style-standards/tooling.md +8 -5
  14. package/content/best-practices/code-style-standards/type-safety.md +13 -12
  15. package/content/best-practices/common-pitfalls.md +56 -37
  16. package/content/best-practices/contribution-workflow.md +13 -14
  17. package/content/best-practices/data-modeling.md +46 -22
  18. package/content/best-practices/deployment-strategies.md +28 -27
  19. package/content/best-practices/error-handling.md +48 -24
  20. package/content/best-practices/index.md +5 -5
  21. package/content/best-practices/performance-optimization.md +40 -31
  22. package/content/best-practices/security-guidelines.md +52 -23
  23. package/content/best-practices/testing-strategies.md +65 -51
  24. package/content/best-practices/troubleshooting-tips.md +24 -24
  25. package/content/extensions/components/{swagger.md → api-reference.md} +40 -31
  26. package/content/extensions/components/authentication/api.md +19 -19
  27. package/content/extensions/components/authentication/errors.md +7 -7
  28. package/content/extensions/components/authentication/index.md +10 -8
  29. package/content/extensions/components/authentication/usage.md +101 -6
  30. package/content/extensions/components/authorization/api.md +45 -25
  31. package/content/extensions/components/authorization/errors.md +6 -6
  32. package/content/extensions/components/authorization/index.md +11 -10
  33. package/content/extensions/components/authorization/usage.md +21 -21
  34. package/content/extensions/components/health-check.md +1 -1
  35. package/content/extensions/components/index.md +5 -5
  36. package/content/extensions/components/mail/errors.md +15 -15
  37. package/content/extensions/components/mail/index.md +1 -2
  38. package/content/extensions/components/mail/usage.md +1 -1
  39. package/content/extensions/components/request-tracker.md +1 -1
  40. package/content/extensions/components/socket-io/api.md +9 -9
  41. package/content/extensions/components/socket-io/errors.md +5 -5
  42. package/content/extensions/components/socket-io/index.md +8 -8
  43. package/content/extensions/components/socket-io/usage.md +1 -1
  44. package/content/extensions/components/static-asset/api.md +17 -4
  45. package/content/extensions/components/static-asset/errors.md +4 -4
  46. package/content/extensions/components/static-asset/index.md +26 -28
  47. package/content/extensions/components/static-asset/usage.md +13 -12
  48. package/content/extensions/components/template/index.md +2 -2
  49. package/content/extensions/components/template/setup-page.md +1 -1
  50. package/content/extensions/components/websocket/api.md +3 -3
  51. package/content/extensions/components/websocket/errors.md +5 -5
  52. package/content/extensions/components/websocket/index.md +5 -5
  53. package/content/extensions/components/websocket/usage.md +3 -3
  54. package/content/extensions/helpers/cron/index.md +2 -2
  55. package/content/extensions/helpers/crypto/index.md +1 -1
  56. package/content/extensions/helpers/env/index.md +27 -12
  57. package/content/extensions/helpers/error/index.md +81 -25
  58. package/content/extensions/helpers/index.md +2 -3
  59. package/content/extensions/helpers/inversion/index.md +15 -7
  60. package/content/extensions/helpers/kafka/compile-binary.md +92 -0
  61. package/content/extensions/helpers/kafka/examples.md +1 -1
  62. package/content/extensions/helpers/kafka/index.md +3 -0
  63. package/content/extensions/helpers/logger/index.md +32 -2
  64. package/content/extensions/helpers/network/index.md +6 -0
  65. package/content/extensions/helpers/queue/index.md +14 -17
  66. package/content/extensions/helpers/redis/index.md +548 -323
  67. package/content/extensions/helpers/socket-io/index.md +14 -10
  68. package/content/extensions/helpers/storage/api.md +44 -8
  69. package/content/extensions/helpers/storage/index.md +43 -7
  70. package/content/extensions/helpers/template/index.md +6 -3
  71. package/content/extensions/helpers/types/index.md +11 -8
  72. package/content/extensions/helpers/websocket/api.md +9 -9
  73. package/content/extensions/helpers/websocket/index.md +7 -7
  74. package/content/extensions/helpers/worker-thread/index.md +2 -2
  75. package/content/extensions/index.md +3 -4
  76. package/content/extensions/src-details/mcp-server.md +18 -24
  77. package/content/guides/core-concepts/application/bootstrapping.md +11 -14
  78. package/content/guides/core-concepts/application/index.md +3 -3
  79. package/content/guides/core-concepts/components.md +19 -10
  80. package/content/guides/core-concepts/dependency-injection.md +6 -3
  81. package/content/guides/core-concepts/grpc-controllers.md +6 -5
  82. package/content/guides/core-concepts/persistent/datasources.md +42 -43
  83. package/content/guides/core-concepts/persistent/index.md +16 -7
  84. package/content/guides/core-concepts/persistent/models.md +24 -20
  85. package/content/guides/core-concepts/persistent/postgres-drivers.md +201 -0
  86. package/content/guides/core-concepts/persistent/repositories.md +40 -23
  87. package/content/guides/core-concepts/persistent/search-meilisearch.md +185 -0
  88. package/content/guides/core-concepts/persistent/search-typesense.md +431 -0
  89. package/content/guides/core-concepts/persistent/transactions.md +61 -25
  90. package/content/guides/core-concepts/rest-controllers.md +12 -9
  91. package/content/guides/core-concepts/services.md +330 -60
  92. package/content/guides/get-started/5-minute-quickstart.md +15 -15
  93. package/content/guides/get-started/philosophy.md +36 -36
  94. package/content/guides/get-started/setup.md +3 -3
  95. package/content/guides/index.md +3 -3
  96. package/content/guides/migrations/redis-helpers-migration.md +177 -0
  97. package/content/guides/migrations/scoped-rbac-migration.md +17 -17
  98. package/content/guides/migrations/unified-connectors-migration.md +113 -0
  99. package/content/guides/reference/glossary.md +19 -12
  100. package/content/guides/reference/mcp-docs-server.md +22 -18
  101. package/content/guides/tutorials/building-a-crud-api.md +37 -44
  102. package/content/guides/tutorials/complete-installation.md +17 -17
  103. package/content/guides/tutorials/ecommerce-api.md +163 -124
  104. package/content/guides/tutorials/realtime-chat.md +181 -135
  105. package/content/guides/tutorials/testing.md +65 -523
  106. package/content/index.md +2 -180
  107. package/content/public/apple-touch-icon.png +0 -0
  108. package/content/public/og-image.png +0 -0
  109. package/content/public/site.webmanifest +11 -0
  110. package/content/references/base/application.md +4 -5
  111. package/content/references/base/bootstrapping.md +18 -5
  112. package/content/references/base/components.md +149 -120
  113. package/content/references/base/connectors.md +178 -0
  114. package/content/references/base/controllers.md +41 -30
  115. package/content/references/base/datasources.md +163 -92
  116. package/content/references/base/dependency-injection.md +34 -22
  117. package/content/references/base/filter-system/application-usage.md +17 -14
  118. package/content/references/base/filter-system/array-operators.md +7 -2
  119. package/content/references/base/filter-system/comparison-operators.md +3 -0
  120. package/content/references/base/filter-system/default-filter.md +89 -71
  121. package/content/references/base/filter-system/fields-order-pagination.md +22 -22
  122. package/content/references/base/filter-system/index.md +6 -3
  123. package/content/references/base/filter-system/json-filtering.md +20 -1
  124. package/content/references/base/filter-system/list-operators.md +1 -1
  125. package/content/references/base/filter-system/logical-operators.md +33 -1
  126. package/content/references/base/filter-system/null-operators.md +30 -1
  127. package/content/references/base/filter-system/quick-reference.md +23 -4
  128. package/content/references/base/filter-system/tips.md +5 -5
  129. package/content/references/base/filter-system/use-cases.md +12 -12
  130. package/content/references/base/grpc-controllers.md +13 -13
  131. package/content/references/base/index.md +24 -12
  132. package/content/references/base/middlewares.md +265 -327
  133. package/content/references/base/models.md +63 -49
  134. package/content/references/base/providers.md +136 -130
  135. package/content/references/base/repositories/advanced.md +59 -58
  136. package/content/references/base/repositories/index.md +115 -91
  137. package/content/references/base/repositories/mixins.md +55 -291
  138. package/content/references/base/repositories/relations.md +54 -64
  139. package/content/references/base/repositories/soft-deletable.md +31 -30
  140. package/content/references/base/services.md +296 -93
  141. package/content/references/configuration/environment-variables.md +49 -31
  142. package/content/references/configuration/index.md +6 -6
  143. package/content/references/index.md +17 -12
  144. package/content/references/quick-reference.md +65 -106
  145. package/content/references/utilities/crypto.md +65 -23
  146. package/content/references/utilities/index.md +3 -3
  147. package/content/references/utilities/jsx.md +6 -4
  148. package/content/references/utilities/module.md +68 -20
  149. package/content/references/utilities/parse.md +4 -14
  150. package/content/references/utilities/promise.md +9 -7
  151. package/content/references/utilities/schema.md +5 -3
  152. package/dist/mcp-server/common/guards.d.ts +8 -0
  153. package/dist/mcp-server/common/guards.d.ts.map +1 -0
  154. package/dist/mcp-server/common/guards.js +14 -0
  155. package/dist/mcp-server/common/guards.js.map +1 -0
  156. package/dist/mcp-server/common/index.d.ts +1 -0
  157. package/dist/mcp-server/common/index.d.ts.map +1 -1
  158. package/dist/mcp-server/common/index.js +1 -0
  159. package/dist/mcp-server/common/index.js.map +1 -1
  160. package/dist/mcp-server/helpers/docs.helper.d.ts.map +1 -1
  161. package/dist/mcp-server/helpers/docs.helper.js +4 -2
  162. package/dist/mcp-server/helpers/docs.helper.js.map +1 -1
  163. package/dist/mcp-server/helpers/github.helper.js +1 -1
  164. package/dist/mcp-server/index.js +7 -2
  165. package/dist/mcp-server/index.js.map +1 -1
  166. package/dist/mcp-server/tools/base.tool.d.ts +6 -2
  167. package/dist/mcp-server/tools/base.tool.d.ts.map +1 -1
  168. package/dist/mcp-server/tools/base.tool.js.map +1 -1
  169. package/dist/mcp-server/tools/docs/search-documents.tool.d.ts +1 -1
  170. package/dist/mcp-server/tools/github/list-project-files.tool.d.ts +1 -1
  171. package/dist/mcp-server/tools/github/search-code.tool.d.ts +1 -1
  172. package/dist/mcp-server/tools/github/search-code.tool.d.ts.map +1 -1
  173. package/dist/mcp-server/tools/github/search-code.tool.js +4 -1
  174. package/dist/mcp-server/tools/github/search-code.tool.js.map +1 -1
  175. package/dist/mcp-server/tools/github/verify-dependencies.tool.d.ts.map +1 -1
  176. package/dist/mcp-server/tools/github/verify-dependencies.tool.js +3 -1
  177. package/dist/mcp-server/tools/github/verify-dependencies.tool.js.map +1 -1
  178. package/package.json +9 -9
  179. package/content/extensions/helpers/testing/index.md +0 -510
  180. package/content/references/base/middleware.md +0 -347
package/content/index.md CHANGED
@@ -1,183 +1,5 @@
1
1
  ---
2
- layout: home
3
-
4
- hero:
5
- name: IGNIS
6
- text: Enterprise APIs at Hono Speed
7
- tagline: "Architecture that scales, performance that flies. Enterprise patterns, raw performance speed, DI Powered."
8
- image:
9
- src: /logo.svg
10
- alt: IGNIS
11
- actions:
12
- - theme: brand
13
- text: Get Started
14
- link: /guides/get-started/5-minute-quickstart
15
- - theme: alt
16
- text: Why Ignis?
17
- link: /guides/get-started/philosophy
18
- - theme: alt
19
- text: GitHub
20
- link: https://github.com/VENIZIA-AI/ignis
21
-
22
- features:
23
- - title: 140k+ req/s
24
- details: Built on Hono, one of the fastest web frameworks. Near-native performance on Bun, Node, and edge runtimes.
25
- link: /guides/get-started/philosophy
26
- linkText: See benchmarks
27
-
28
- - title: Enterprise Architecture
29
- details: Layered design with Controllers, Services, and Repositories. Clean separation of concerns out of the box.
30
- link: /guides/core-concepts/application/
31
- linkText: Learn more
32
-
33
- - title: Dependency Injection
34
- details: Lightweight DI container with decorators. Testable, loosely coupled code without the boilerplate.
35
- link: /guides/core-concepts/dependency-injection
36
- linkText: See how
37
-
38
- - title: Auto-Generated Docs
39
- details: OpenAPI/Swagger from Zod schemas. Interactive API explorer included with zero config.
40
- link: /extensions/components/swagger
41
- linkText: View example
42
-
43
- - title: Type-Safe Database
44
- details: Drizzle ORM integration with advanced filtering, relations, JSON queries, and transactions.
45
- link: /references/base/repositories/
46
- linkText: Explore
47
-
48
- - title: Batteries Included
49
- details: Auth, WebSockets, Queues, Cron, Redis, S3, Email — ready-to-use components and helpers.
50
- link: /references/
51
- linkText: Browse all
2
+ layout: page
52
3
  ---
53
4
 
54
-
55
-
56
- ## Quick Start
57
-
58
- ```bash
59
- # Install dependencies
60
- bun add hono @hono/zod-openapi @scalar/hono-api-reference @venizia/ignis
61
- bun add -d typescript @types/bun
62
-
63
- # Create src/index.ts with your first API
64
- ```
65
-
66
- ```typescript
67
- import { BaseApplication, BaseRestController, controller, get, jsonContent, SwaggerComponent } from '@venizia/ignis';
68
- import { HTTP } from '@venizia/ignis-helpers';
69
- import { z } from '@hono/zod-openapi';
70
-
71
- // 1. Define your controller
72
- @controller({ path: '/hello' })
73
- class HelloController extends BaseRestController {
74
- constructor() {
75
- super({ scope: 'HelloController', path: '/hello' });
76
- }
77
-
78
- override binding() {} // Required: register additional routes or dependencies here
79
-
80
- @get({
81
- configs: {
82
- path: '/',
83
- responses: {
84
- [HTTP.ResultCodes.RS_2.Ok]: jsonContent({
85
- schema: z.object({ message: z.string() }),
86
- }),
87
- },
88
- },
89
- })
90
- sayHello(c) {
91
- return c.json({ message: 'Hello from Ignis! 🔥' });
92
- }
93
- }
94
-
95
- // 2. Create and configure your application
96
- class App extends BaseApplication {
97
- getAppInfo() {
98
- return { name: 'my-app', version: '1.0.0', description: 'My Ignis App' };
99
- }
100
- staticConfigure() {}
101
- preConfigure() {
102
- this.component(SwaggerComponent); // API docs at /doc/explorer
103
- this.controller(HelloController);
104
- }
105
- postConfigure() {}
106
- setupMiddlewares() {}
107
- }
108
-
109
- // 3. Start the server
110
- const app = new App({
111
- scope: 'App',
112
- config: { host: '0.0.0.0', port: 3000, path: { base: '/api' } },
113
- });
114
- app.start();
115
- ```
116
-
117
- ```bash
118
- # Run it
119
- bun run src/index.ts
120
-
121
- # Visit http://localhost:3000/api/hello
122
- # API docs at http://localhost:3000/doc/explorer
123
- ```
124
-
125
- <div class="tip custom-block" style="padding-top: 8px">
126
-
127
- Ready for a step-by-step guide? Follow the [5-minute quickstart →](/guides/get-started/5-minute-quickstart)
128
-
129
- </div>
130
-
131
- ## When to Use Ignis
132
-
133
- <div class="use-ignis-grid">
134
-
135
- <div class="use-ignis-card">
136
- <h3>Perfect For</h3>
137
- <ul>
138
- <li><strong>SaaS backends</strong> — Multi-tenant, complex business logic</li>
139
- <li><strong>E-commerce APIs</strong> — Products, orders, payments</li>
140
- <li><strong>Enterprise apps</strong> — Teams need clear patterns</li>
141
- <li><strong>Growing projects</strong> — 10+ endpoints that need structure</li>
142
- <li><strong>REST APIs</strong> — Full CRUD with validation & docs</li>
143
- <li><strong>gRPC APIs</strong> — ConnectRPC-based gRPC with decorator support</li>
144
- <li><strong>Real-time apps</strong> — WebSocket support built-in</li>
145
- </ul>
146
- </div>
147
-
148
- <div class="use-ignis-card">
149
- <h3>Consider Alternatives</h3>
150
- <ul>
151
- <li><strong>Simple webhooks</strong> — Use plain Hono</li>
152
- <li><strong>3-5 endpoint APIs</strong> — Ignis adds overhead</li>
153
- <li><strong>Quick prototypes</strong> — Start with Hono first</li>
154
- <li><strong>Serverless functions</strong> — Hono alone is lighter</li>
155
- <li><strong>Static sites</strong> — Use Astro or Next.js</li>
156
- <li><strong>No TypeScript</strong> — Ignis requires TS</li>
157
- </ul>
158
- </div>
159
-
160
- </div>
161
-
162
- <div style="padding: 3rem 2rem; margin: 2rem 0; border-radius: 16px; background: var(--vp-c-bg-soft); text-align: center;">
163
-
164
- <p style="font-size: 0.9rem; color: var(--vp-c-text-2); margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 2px;">Powered by</p>
165
-
166
- <div style="display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem; margin-bottom: 1.5rem;">
167
- <a href="https://hono.dev" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Hono</a>
168
- <a href="https://orm.drizzle.team" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Drizzle ORM</a>
169
- <a href="https://zod.dev" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Zod</a>
170
- <a href="https://www.typescriptlang.org" target="_blank" style="font-size: 1.2rem; font-weight: 500;">TypeScript</a>
171
- <a href="https://bun.sh" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Bun</a>
172
- </div>
173
-
174
- <hr style="border: none; border-top: 1px solid var(--vp-c-divider); margin: 1.5rem 0;" />
175
-
176
- <p style="font-size: 0.9rem; color: var(--vp-c-text-2); margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 2px;">Inspired by</p>
177
-
178
- <div style="display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem;">
179
- <a href="https://spring.io/projects/spring-boot" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Spring Boot</a>
180
- <a href="https://loopback.io/doc/en/lb4/" target="_blank" style="font-size: 1.2rem; font-weight: 500;">LoopBack 4</a>
181
- </div>
182
-
183
- </div>
5
+ <HomeLanding />
Binary file
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "IGNIS",
3
+ "short_name": "IGNIS",
4
+ "theme_color": "#AF5F5F",
5
+ "background_color": "#0B0A0C",
6
+ "display": "standalone",
7
+ "icons": [
8
+ { "src": "/logo.svg", "sizes": "any", "type": "image/svg+xml" },
9
+ { "src": "/apple-touch-icon.png", "sizes": "180x180", "type": "image/png" }
10
+ ]
11
+ }
@@ -6,7 +6,7 @@ difficulty: beginner
6
6
 
7
7
  # Deep Dive: Application
8
8
 
9
- Technical reference for `AbstractApplication` and `BaseApplication` - the foundation classes for every Ignis application.
9
+ Technical reference for `AbstractApplication` and `BaseApplication` - the foundation classes for every IGNIS application.
10
10
 
11
11
  **Files:**
12
12
  - `packages/core/src/base/applications/abstract.ts`
@@ -49,7 +49,7 @@ The constructor:
49
49
 
50
50
  | Feature | Description |
51
51
  | :--- | :--- |
52
- | **Hono Instance** | Creates and holds two `OpenAPIHono` instances a main server and a root router |
52
+ | **Hono Instance** | Creates and holds two `OpenAPIHono` instances - a main server and a root router |
53
53
  | **Runtime Detection** | Auto-detects Bun or Node.js via `RuntimeModules.detect()` and uses the appropriate server implementation |
54
54
  | **Core Bindings** | Registers `CoreBindings.APPLICATION_INSTANCE`, `CoreBindings.APPLICATION_SERVER`, and `CoreBindings.APPLICATION_ROOT_ROUTER` |
55
55
  | **Lifecycle Management** | Defines abstract methods (`preConfigure`, `postConfigure`, `setupMiddlewares`, `staticConfigure`, `initialize`, `getAppInfo`) |
@@ -167,7 +167,7 @@ service<Base extends IService, Args extends AnyObject = any>(
167
167
  opts?: TMixinOpts<Args>,
168
168
  ): Binding<Base>
169
169
 
170
- repository<Base extends IRepository<TTableSchemaWithId>, Args extends AnyObject = any>(
170
+ repository<Base extends IRepository, Args extends AnyObject = any>(
171
171
  ctor: TClass<Base>,
172
172
  opts?: TMixinOpts<Args>,
173
173
  ): Binding<Base>
@@ -305,8 +305,7 @@ interface IApplicationConfigs {
305
305
  bootOptions?: IBootOptions; // Boot system configuration
306
306
  debug?: { shouldShowRoutes?: boolean }; // Show registered routes on startup
307
307
  transports?: TControllerTransport[]; // Controller transports: 'rest' | 'grpc' (default: ['rest'])
308
- strictPath?: boolean; // Hono strict path matching (default: true)
309
- [key: string]: any; // Extensible
308
+ [key: string]: any; // Extensible (e.g. strictPath?: boolean - Hono strict path matching, default: true)
310
309
  }
311
310
  ```
312
311
 
@@ -262,10 +262,26 @@ interface IBootstrapper {
262
262
  Report generated after boot completion.
263
263
 
264
264
  ```typescript
265
- interface IBootReport {}
265
+ interface IBootReport {
266
+ /** Class names of the booters that actually ran, in execution order. */
267
+ booters: string[];
268
+ phases: IBootPhaseReport[];
269
+ totalDurationMs: number;
270
+ }
271
+
272
+ interface IBootPhaseReport {
273
+ phase: TBootPhase;
274
+ durationMs: number;
275
+ }
266
276
  ```
267
277
 
268
- Currently an empty interface, reserved for future enhancements (timing, errors, artifact counts, etc.).
278
+ | Property | Type | Description |
279
+ |----------|------|-------------|
280
+ | `booters` | `string[]` | Class names of the booters that actually ran, in execution order |
281
+ | `phases` | `IBootPhaseReport[]` | Per-phase timing: `{ phase, durationMs }` for each executed phase |
282
+ | `totalDurationMs` | `number` | Total wall-clock duration of the whole `boot()` call |
283
+
284
+ Built by `Bootstrapper.generateReport()` (private) at the end of `boot()`.
269
285
 
270
286
 
271
287
  ### IApplication
@@ -674,14 +690,12 @@ Load class constructors from files.
674
690
  ```typescript
675
691
  async function loadClasses(opts: {
676
692
  files: string[];
677
- root: string;
678
693
  }): Promise<AnyType[]>
679
694
  ```
680
695
 
681
696
  | Parameter | Type | Description |
682
697
  |-----------|------|-------------|
683
698
  | `files` | `string[]` | Array of file paths to load |
684
- | `root` | `string` | Project root (for error messages) |
685
699
 
686
700
  **Returns:** `Promise<AnyType[]>` - Array of loaded class constructors (filtered by `isClass` type guard)
687
701
 
@@ -693,7 +707,6 @@ const classes = await loadClasses({
693
707
  '/path/to/project/controllers/user.controller.js',
694
708
  '/path/to/project/controllers/product.controller.js'
695
709
  ],
696
- root: '/path/to/project'
697
710
  });
698
711
  // [UserController, ProductController]
699
712
  ```