@venizia/ignis-docs 0.0.2 → 0.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.
Files changed (134) hide show
  1. package/README.md +1 -1
  2. package/package.json +4 -2
  3. package/wiki/best-practices/api-usage-examples.md +591 -0
  4. package/wiki/best-practices/architectural-patterns.md +415 -0
  5. package/wiki/best-practices/architecture-decisions.md +488 -0
  6. package/wiki/{get-started/best-practices → best-practices}/code-style-standards.md +647 -182
  7. package/wiki/{get-started/best-practices → best-practices}/common-pitfalls.md +109 -4
  8. package/wiki/{get-started/best-practices → best-practices}/contribution-workflow.md +34 -7
  9. package/wiki/best-practices/data-modeling.md +376 -0
  10. package/wiki/best-practices/deployment-strategies.md +698 -0
  11. package/wiki/best-practices/index.md +27 -0
  12. package/wiki/best-practices/performance-optimization.md +196 -0
  13. package/wiki/best-practices/security-guidelines.md +218 -0
  14. package/wiki/{get-started/best-practices → best-practices}/troubleshooting-tips.md +97 -1
  15. package/wiki/changelogs/2025-12-16-initial-architecture.md +1 -1
  16. package/wiki/changelogs/2025-12-16-model-repo-datasource-refactor.md +1 -1
  17. package/wiki/changelogs/2025-12-17-refactor.md +1 -1
  18. package/wiki/changelogs/2025-12-18-performance-optimizations.md +5 -5
  19. package/wiki/changelogs/2025-12-18-repository-validation-security.md +13 -7
  20. package/wiki/changelogs/2025-12-26-nested-relations-and-generics.md +86 -0
  21. package/wiki/changelogs/2025-12-26-transaction-support.md +57 -0
  22. package/wiki/changelogs/2025-12-29-dynamic-binding-registration.md +104 -0
  23. package/wiki/changelogs/2025-12-29-snowflake-uid-helper.md +100 -0
  24. package/wiki/changelogs/2025-12-30-repository-enhancements.md +214 -0
  25. package/wiki/changelogs/2025-12-31-json-path-filtering-array-operators.md +214 -0
  26. package/wiki/changelogs/2025-12-31-string-id-custom-generator.md +137 -0
  27. package/wiki/changelogs/2026-01-02-default-filter-and-repository-mixins.md +418 -0
  28. package/wiki/changelogs/index.md +8 -1
  29. package/wiki/changelogs/planned-schema-migrator.md +2 -10
  30. package/wiki/{get-started/core-concepts → guides/core-concepts/application}/bootstrapping.md +18 -5
  31. package/wiki/{get-started/core-concepts/application.md → guides/core-concepts/application/index.md} +47 -104
  32. package/wiki/guides/core-concepts/components-guide.md +509 -0
  33. package/wiki/guides/core-concepts/components.md +122 -0
  34. package/wiki/{get-started → guides}/core-concepts/controllers.md +30 -13
  35. package/wiki/{get-started → guides}/core-concepts/dependency-injection.md +97 -0
  36. package/wiki/guides/core-concepts/persistent/datasources.md +179 -0
  37. package/wiki/guides/core-concepts/persistent/index.md +119 -0
  38. package/wiki/guides/core-concepts/persistent/models.md +241 -0
  39. package/wiki/guides/core-concepts/persistent/repositories.md +219 -0
  40. package/wiki/guides/core-concepts/persistent/transactions.md +170 -0
  41. package/wiki/{get-started → guides}/core-concepts/services.md +26 -3
  42. package/wiki/{get-started → guides/get-started}/5-minute-quickstart.md +59 -14
  43. package/wiki/guides/get-started/philosophy.md +682 -0
  44. package/wiki/guides/get-started/setup.md +157 -0
  45. package/wiki/guides/index.md +89 -0
  46. package/wiki/guides/reference/glossary.md +243 -0
  47. package/wiki/{get-started → guides/reference}/mcp-docs-server.md +0 -10
  48. package/wiki/{get-started → guides/tutorials}/building-a-crud-api.md +134 -132
  49. package/wiki/{get-started/quickstart.md → guides/tutorials/complete-installation.md} +107 -71
  50. package/wiki/guides/tutorials/ecommerce-api.md +1399 -0
  51. package/wiki/guides/tutorials/realtime-chat.md +1261 -0
  52. package/wiki/guides/tutorials/testing.md +723 -0
  53. package/wiki/index.md +176 -37
  54. package/wiki/references/base/application.md +27 -0
  55. package/wiki/references/base/bootstrapping.md +30 -26
  56. package/wiki/references/base/components.md +532 -31
  57. package/wiki/references/base/controllers.md +136 -38
  58. package/wiki/references/base/datasources.md +108 -5
  59. package/wiki/references/base/dependency-injection.md +39 -3
  60. package/wiki/references/base/filter-system/application-usage.md +224 -0
  61. package/wiki/references/base/filter-system/array-operators.md +132 -0
  62. package/wiki/references/base/filter-system/comparison-operators.md +109 -0
  63. package/wiki/references/base/filter-system/default-filter.md +428 -0
  64. package/wiki/references/base/filter-system/fields-order-pagination.md +155 -0
  65. package/wiki/references/base/filter-system/index.md +127 -0
  66. package/wiki/references/base/filter-system/json-filtering.md +197 -0
  67. package/wiki/references/base/filter-system/list-operators.md +71 -0
  68. package/wiki/references/base/filter-system/logical-operators.md +156 -0
  69. package/wiki/references/base/filter-system/null-operators.md +58 -0
  70. package/wiki/references/base/filter-system/pattern-matching.md +108 -0
  71. package/wiki/references/base/filter-system/quick-reference.md +431 -0
  72. package/wiki/references/base/filter-system/range-operators.md +63 -0
  73. package/wiki/references/base/filter-system/tips.md +190 -0
  74. package/wiki/references/base/filter-system/use-cases.md +452 -0
  75. package/wiki/references/base/index.md +90 -0
  76. package/wiki/references/base/middlewares.md +602 -0
  77. package/wiki/references/base/models.md +215 -23
  78. package/wiki/references/base/providers.md +732 -0
  79. package/wiki/references/base/repositories/advanced.md +555 -0
  80. package/wiki/references/base/repositories/index.md +228 -0
  81. package/wiki/references/base/repositories/mixins.md +331 -0
  82. package/wiki/references/base/repositories/relations.md +486 -0
  83. package/wiki/references/base/repositories.md +40 -549
  84. package/wiki/references/base/services.md +28 -4
  85. package/wiki/references/components/authentication.md +22 -2
  86. package/wiki/references/components/health-check.md +12 -0
  87. package/wiki/references/components/index.md +23 -0
  88. package/wiki/references/components/mail.md +687 -0
  89. package/wiki/references/components/request-tracker.md +16 -0
  90. package/wiki/references/components/socket-io.md +18 -0
  91. package/wiki/references/components/static-asset.md +14 -26
  92. package/wiki/references/components/swagger.md +17 -0
  93. package/wiki/references/configuration/environment-variables.md +427 -0
  94. package/wiki/references/configuration/index.md +73 -0
  95. package/wiki/references/helpers/cron.md +14 -0
  96. package/wiki/references/helpers/crypto.md +15 -0
  97. package/wiki/references/helpers/env.md +16 -0
  98. package/wiki/references/helpers/error.md +17 -0
  99. package/wiki/references/helpers/index.md +15 -0
  100. package/wiki/references/helpers/inversion.md +24 -4
  101. package/wiki/references/helpers/logger.md +19 -0
  102. package/wiki/references/helpers/network.md +11 -0
  103. package/wiki/references/helpers/queue.md +19 -0
  104. package/wiki/references/helpers/redis.md +21 -0
  105. package/wiki/references/helpers/socket-io.md +24 -5
  106. package/wiki/references/helpers/storage.md +18 -10
  107. package/wiki/references/helpers/testing.md +18 -0
  108. package/wiki/references/helpers/types.md +167 -0
  109. package/wiki/references/helpers/uid.md +167 -0
  110. package/wiki/references/helpers/worker-thread.md +16 -0
  111. package/wiki/references/index.md +177 -0
  112. package/wiki/references/quick-reference.md +634 -0
  113. package/wiki/references/src-details/boot.md +3 -3
  114. package/wiki/references/src-details/dev-configs.md +0 -4
  115. package/wiki/references/src-details/docs.md +2 -2
  116. package/wiki/references/src-details/index.md +86 -0
  117. package/wiki/references/src-details/inversion.md +1 -6
  118. package/wiki/references/src-details/mcp-server.md +3 -15
  119. package/wiki/references/utilities/index.md +86 -10
  120. package/wiki/references/utilities/jsx.md +577 -0
  121. package/wiki/references/utilities/request.md +0 -2
  122. package/wiki/references/utilities/statuses.md +740 -0
  123. package/wiki/changelogs/planned-transaction-support.md +0 -216
  124. package/wiki/get-started/best-practices/api-usage-examples.md +0 -266
  125. package/wiki/get-started/best-practices/architectural-patterns.md +0 -170
  126. package/wiki/get-started/best-practices/data-modeling.md +0 -177
  127. package/wiki/get-started/best-practices/deployment-strategies.md +0 -121
  128. package/wiki/get-started/best-practices/performance-optimization.md +0 -88
  129. package/wiki/get-started/best-practices/security-guidelines.md +0 -99
  130. package/wiki/get-started/core-concepts/components.md +0 -98
  131. package/wiki/get-started/core-concepts/persistent.md +0 -543
  132. package/wiki/get-started/index.md +0 -65
  133. package/wiki/get-started/philosophy.md +0 -296
  134. package/wiki/get-started/prerequisites.md +0 -113
package/wiki/index.md CHANGED
@@ -1,48 +1,187 @@
1
1
  ---
2
- # https://vitepress.dev/reference/default-theme-home-page
3
2
  layout: home
4
3
 
5
4
  hero:
6
- name: "🔥 IGNIS"
7
- text: "A TypeScript Server Infrastructure with Hono"
8
- tagline: Enterprise-grade architecture meets Hono's ultrafast performance. Build scalable REST APIs with TypeScript.
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
9
11
  actions:
10
12
  - theme: brand
11
13
  text: Get Started
12
- link: /get-started/
14
+ link: /guides/get-started/5-minute-quickstart
13
15
  - theme: alt
14
- text: Quickstart
15
- link: /get-started/quickstart
16
+ text: Why Ignis?
17
+ link: /guides/get-started/philosophy
16
18
  - theme: alt
17
- text: Philosophy
18
- link: /get-started/philosophy
19
+ text: GitHub
20
+ link: https://github.com/VENIZIA-AI/ignis
19
21
 
20
22
  features:
21
- - icon: <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-zap"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>
22
- title: Ultrafast Hono Performance
23
- details: Leverage Hono's speed for high-performance APIs and serverless environments, ensuring your applications are always responsive.
24
-
25
- - icon: <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-git-branch"><line x1="6" y1="3" x2="6" y2="15"></line><path d="M18 6l-6 6-6-6"></path><path d="M12 18V6"></path><path d="M18 12l-6 6-6-6"></path><circle cx="6" cy="18" r="3"></circle><circle cx="18" cy="6" r="3"></circle></svg>
26
- title: Modular Package Architecture
27
- details: Built as a monorepo with independent packages (@venizia/ignis, @venizia/ignis-helpers, @venizia/ignis-inversion, @venizia/dev-configs) for flexible, granular consumption.
28
-
29
- - icon: <svg width="24" height="24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-share-2"><circle cx="18" cy="6" r="3"></circle><circle cx="6" cy="12" r="3"></circle><circle cx="18" cy="18" r="3"></circle><line x1="8.59" y1="13.51" x2="15.42" y2="16.49"></line><line x1="15.41" y1="7.51" x2="8.59" y2="10.49"></line></svg>
30
- title: Powerful Dependency Injection
31
- details: Utilize a custom, lightweight DI container to promote loose coupling, enhanced testability, and flexible code organization.
32
-
33
- - icon: <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-layers"><polygon points="12 2 2 7 12 12 22 7 12 2"></polygon><polyline points="2 17 12 22 22 17"></polyline><polyline points="2 12 12 17 22 12"></polyline></svg>
34
- title: Clear Layered Architecture
35
- details: Organize your code with a strict separation of concerns (Controllers, Services, Repositories) for maintainability and clarity.
36
-
37
- - icon: <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-book-open"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg>
38
- title: Automated OpenAPI Documentation
39
- details: Generate interactive Swagger UI documentation effortlessly from your Zod schemas, simplifying API consumption and understanding.
40
-
41
- - icon: <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tool"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-2.06 2.06A7.5 7.5 0 0 1 1.07 11.24a7.5 7.5 0 0 1 10.6-10.6z"></path></svg>
42
- title: Rich & Extensible Ecosystem
43
- details: Benefit from comprehensive built-in helpers for Authentication, Logging, Database interactions, Queues, Worker Threads, and more.
44
-
45
- footer:
46
- message: Released under the MIT License.
47
- copyright: Copyright © 2024-present VENIZIA-AI
48
- ---
23
+ - icon:
24
+ title: 140k+ req/s
25
+ details: Built on Hono, one of the fastest web frameworks. Near-native performance on Bun, Node, and edge runtimes.
26
+ link: /guides/get-started/philosophy
27
+ linkText: See benchmarks
28
+
29
+ - icon: 🏗️
30
+ title: Enterprise Architecture
31
+ details: Layered design with Controllers, Services, and Repositories. Clean separation of concerns out of the box.
32
+ link: /guides/core-concepts/application/
33
+ linkText: Learn more
34
+
35
+ - icon: 💉
36
+ title: Dependency Injection
37
+ details: Lightweight DI container with decorators. Testable, loosely coupled code without the boilerplate.
38
+ link: /guides/core-concepts/dependency-injection
39
+ linkText: See how
40
+
41
+ - icon: 📝
42
+ title: Auto-Generated Docs
43
+ details: OpenAPI/Swagger from Zod schemas. Interactive API explorer included with zero config.
44
+ link: /references/components/swagger
45
+ linkText: View example
46
+
47
+ - icon: 🗃️
48
+ title: Type-Safe Database
49
+ details: Drizzle ORM integration with advanced filtering, relations, JSON queries, and transactions.
50
+ link: /references/base/repositories/
51
+ linkText: Explore
52
+
53
+ - icon: 🧩
54
+ title: Batteries Included
55
+ details: Auth, WebSockets, Queues, Cron, Redis, S3, Email — ready-to-use components and helpers.
56
+ link: /references/
57
+ linkText: Browse all
58
+ ---
59
+
60
+
61
+
62
+ ## Quick Start
63
+
64
+ ```bash
65
+ # Install dependencies
66
+ bun add hono @hono/zod-openapi @scalar/hono-api-reference @venizia/ignis
67
+ bun add -d typescript @types/bun
68
+
69
+ # Create src/index.ts with your first API
70
+ ```
71
+
72
+ ```typescript
73
+ import { BaseApplication, BaseController, controller, get, HTTP, jsonContent, SwaggerComponent } from '@venizia/ignis';
74
+ import { z } from '@hono/zod-openapi';
75
+
76
+ // 1. Define your controller
77
+ @controller({ path: '/hello' })
78
+ class HelloController extends BaseController {
79
+ constructor() {
80
+ super({ scope: 'HelloController', path: '/hello' });
81
+ }
82
+
83
+ override binding() {} // Required: register additional routes or dependencies here
84
+
85
+ @get({
86
+ configs: {
87
+ path: '/',
88
+ responses: {
89
+ [HTTP.ResultCodes.RS_2.Ok]: jsonContent({
90
+ schema: z.object({ message: z.string() }),
91
+ }),
92
+ },
93
+ },
94
+ })
95
+ sayHello(c) {
96
+ return c.json({ message: 'Hello from Ignis! 🔥' });
97
+ }
98
+ }
99
+
100
+ // 2. Create and configure your application
101
+ class App extends BaseApplication {
102
+ getAppInfo() {
103
+ return { name: 'my-app', version: '1.0.0', description: 'My Ignis App' };
104
+ }
105
+ staticConfigure() {}
106
+ preConfigure() {
107
+ this.component(SwaggerComponent); // API docs at /doc/explorer
108
+ this.controller(HelloController);
109
+ }
110
+ postConfigure() {}
111
+ setupMiddlewares() {}
112
+ }
113
+
114
+ // 3. Start the server
115
+ const app = new App({
116
+ scope: 'App',
117
+ config: { host: '0.0.0.0', port: 3000, path: { base: '/api' } },
118
+ });
119
+ app.start();
120
+ ```
121
+
122
+ ```bash
123
+ # Run it
124
+ bun run src/index.ts
125
+
126
+ # Visit http://localhost:3000/api/hello
127
+ # API docs at http://localhost:3000/doc/explorer
128
+ ```
129
+
130
+ <div class="tip custom-block" style="padding-top: 8px">
131
+
132
+ Ready for a step-by-step guide? Follow the [5-minute quickstart →](/guides/get-started/5-minute-quickstart)
133
+
134
+ </div>
135
+
136
+ ## When to Use Ignis
137
+
138
+ <div class="use-ignis-grid">
139
+
140
+ <div class="use-ignis-card">
141
+ <h3>✅ Perfect For</h3>
142
+ <ul>
143
+ <li><strong>SaaS backends</strong> — Multi-tenant, complex business logic</li>
144
+ <li><strong>E-commerce APIs</strong> — Products, orders, payments</li>
145
+ <li><strong>Enterprise apps</strong> — Teams need clear patterns</li>
146
+ <li><strong>Growing projects</strong> — 10+ endpoints that need structure</li>
147
+ <li><strong>REST APIs</strong> — Full CRUD with validation & docs</li>
148
+ <li><strong>Real-time apps</strong> — WebSocket support built-in</li>
149
+ </ul>
150
+ </div>
151
+
152
+ <div class="use-ignis-card">
153
+ <h3>❌ Consider Alternatives</h3>
154
+ <ul>
155
+ <li><strong>Simple webhooks</strong> — Use plain Hono</li>
156
+ <li><strong>3-5 endpoint APIs</strong> — Ignis adds overhead</li>
157
+ <li><strong>Quick prototypes</strong> — Start with Hono first</li>
158
+ <li><strong>Serverless functions</strong> — Hono alone is lighter</li>
159
+ <li><strong>Static sites</strong> — Use Astro or Next.js</li>
160
+ <li><strong>No TypeScript</strong> — Ignis requires TS</li>
161
+ </ul>
162
+ </div>
163
+
164
+ </div>
165
+
166
+ <div style="padding: 3rem 2rem; margin: 2rem 0; border-radius: 16px; background: var(--vp-c-bg-soft); text-align: center;">
167
+
168
+ <p style="font-size: 0.9rem; color: var(--vp-c-text-2); margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 2px;">Powered by</p>
169
+
170
+ <div style="display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem; margin-bottom: 1.5rem;">
171
+ <a href="https://hono.dev" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Hono</a>
172
+ <a href="https://orm.drizzle.team" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Drizzle ORM</a>
173
+ <a href="https://zod.dev" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Zod</a>
174
+ <a href="https://www.typescriptlang.org" target="_blank" style="font-size: 1.2rem; font-weight: 500;">TypeScript</a>
175
+ <a href="https://bun.sh" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Bun</a>
176
+ </div>
177
+
178
+ <hr style="border: none; border-top: 1px solid var(--vp-c-divider); margin: 1.5rem 0;" />
179
+
180
+ <p style="font-size: 0.9rem; color: var(--vp-c-text-2); margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 2px;">Inspired by</p>
181
+
182
+ <div style="display: flex; justify-content: center; flex-wrap: wrap; gap: 2rem;">
183
+ <a href="https://spring.io/projects/spring-boot" target="_blank" style="font-size: 1.2rem; font-weight: 500;">Spring Boot</a>
184
+ <a href="https://loopback.io/doc/en/lb4/" target="_blank" style="font-size: 1.2rem; font-weight: 500;">LoopBack 4</a>
185
+ </div>
186
+
187
+ </div>
@@ -1,3 +1,9 @@
1
+ ---
2
+ title: Application Reference
3
+ description: Technical reference for AbstractApplication and BaseApplication classes
4
+ difficulty: beginner
5
+ ---
6
+
1
7
  # Deep Dive: Application
2
8
 
3
9
  Technical reference for `AbstractApplication` and `BaseApplication` - the foundation classes for every Ignis application.
@@ -65,3 +71,24 @@ graph TD
65
71
  | **`preConfigure()`** | Register all resources (datasources, services, controllers) | Nothing instantiated yet - order doesn't matter |
66
72
  | **`register...()`** | Framework iterates bindings and instantiates classes | DataSources initialized first (other layers depend on them) |
67
73
  | **`postConfigure()`** | Logic after all resources configured | Example: fetch initial data from repository |
74
+
75
+ ## See Also
76
+
77
+ - **Related Concepts:**
78
+ - [Application Guide](/guides/core-concepts/application/) - Creating your first application
79
+ - [Bootstrapping](/guides/core-concepts/application/bootstrapping) - Auto-discovery of artifacts
80
+ - [Dependency Injection](/guides/core-concepts/dependency-injection) - How DI works in IGNIS
81
+ - [Controllers](/guides/core-concepts/controllers) - Registering HTTP endpoints
82
+
83
+ - **References:**
84
+ - [Bootstrapping API](/references/base/bootstrapping) - Boot system reference
85
+ - [Components API](/references/base/components) - Component system
86
+ - [Environment Variables](/references/configuration/environment-variables) - Configuration management
87
+ - [Middlewares](/references/base/middlewares) - Request interceptors
88
+
89
+ - **Tutorials:**
90
+ - [5-Minute Quickstart](/guides/get-started/5-minute-quickstart) - Create your first app
91
+ - [Building a CRUD API](/guides/tutorials/building-a-crud-api) - Complete application example
92
+
93
+ - **Best Practices:**
94
+ - [Architectural Patterns](/best-practices/architectural-patterns) - Application structure patterns
@@ -1,3 +1,9 @@
1
+ ---
2
+ title: Bootstrapping Reference
3
+ description: Technical reference for application bootstrapping and initialization
4
+ difficulty: advanced
5
+ ---
6
+
1
7
  # Bootstrapping API Reference
2
8
 
3
9
  > **API Reference**: Classes, interfaces, and utilities for application bootstrapping
@@ -9,7 +15,14 @@
9
15
  - [Types](#types)
10
16
  - [Utilities](#utilities)
11
17
 
12
- ---
18
+ ## Prerequisites
19
+
20
+ Before reading this document, you should understand:
21
+
22
+ - [IGNIS Application](./application.md) - Application lifecycle and initialization
23
+ - [Dependency Injection](./dependency-injection.md) - DI container and bindings
24
+ - [Controllers](./controllers.md), [Services](./services.md), and [Repositories](./repositories/) - Core abstractions
25
+ - Convention-based programming patterns
13
26
 
14
27
  ## Interfaces
15
28
 
@@ -44,7 +57,6 @@ export class Application extends BaseApplication implements IBootableApplication
44
57
  }
45
58
  ```
46
59
 
47
- ---
48
60
 
49
61
  ### IBootOptions
50
62
 
@@ -88,7 +100,6 @@ const bootOptions: IBootOptions = {
88
100
  };
89
101
  ```
90
102
 
91
- ---
92
103
 
93
104
  ### IArtifactOptions
94
105
 
@@ -125,7 +136,6 @@ const customOptions: IArtifactOptions = {
125
136
  };
126
137
  ```
127
138
 
128
- ---
129
139
 
130
140
  ### IBooter
131
141
 
@@ -163,7 +173,6 @@ export class CustomBooter implements IBooter {
163
173
  }
164
174
  ```
165
175
 
166
- ---
167
176
 
168
177
  ### IBooterOptions
169
178
 
@@ -196,7 +205,6 @@ const options: IBooterOptions = {
196
205
  };
197
206
  ```
198
207
 
199
- ---
200
208
 
201
209
  ### IBootExecutionOptions
202
210
 
@@ -234,7 +242,6 @@ await bootstrapper.boot({
234
242
  });
235
243
  ```
236
244
 
237
- ---
238
245
 
239
246
  ### IBootstrapper
240
247
 
@@ -250,7 +257,6 @@ interface IBootstrapper {
250
257
  |--------|--------|-------------|
251
258
  | `boot(opts)` | `Promise<IBootReport>` | Execute boot process with options |
252
259
 
253
- ---
254
260
 
255
261
  ### IBootReport
256
262
 
@@ -262,7 +268,6 @@ interface IBootReport {}
262
268
 
263
269
  Currently an empty interface, reserved for future enhancements (timing, errors, artifact counts, etc.).
264
270
 
265
- ---
266
271
 
267
272
  ### IApplication
268
273
 
@@ -278,7 +283,6 @@ interface IApplication extends Container {
278
283
  |--------|--------|-------------|
279
284
  | `getProjectRoot()` | `string` | Get absolute path to project root |
280
285
 
281
- ---
282
286
 
283
287
  ## Classes
284
288
 
@@ -359,7 +363,6 @@ Generates boot completion report.
359
363
  private generateReport(): IBootReport
360
364
  ```
361
365
 
362
- ---
363
366
 
364
367
  ### BaseArtifactBooter
365
368
 
@@ -476,7 +479,6 @@ protected getPattern(): string
476
479
  | `discoveredFiles` | `string[]` | Array of discovered file paths |
477
480
  | `loadedClasses` | `TClass<any>[]` | Array of loaded class constructors |
478
481
 
479
- ---
480
482
 
481
483
  ### ControllerBooter
482
484
 
@@ -504,7 +506,6 @@ constructor(
504
506
  | Extensions | `['.controller.js']` |
505
507
  | Binding Key | `controllers.{ClassName}` |
506
508
 
507
- ---
508
509
 
509
510
  ### ServiceBooter
510
511
 
@@ -532,7 +533,6 @@ constructor(
532
533
  | Extensions | `['.service.js']` |
533
534
  | Binding Key | `services.{ClassName}` |
534
535
 
535
- ---
536
536
 
537
537
  ### RepositoryBooter
538
538
 
@@ -560,7 +560,6 @@ constructor(
560
560
  | Extensions | `['.repository.js']` |
561
561
  | Binding Key | `repositories.{ClassName}` |
562
562
 
563
- ---
564
563
 
565
564
  ### DatasourceBooter
566
565
 
@@ -588,7 +587,6 @@ constructor(
588
587
  | Extensions | `['.datasource.js']` |
589
588
  | Binding Key | `datasources.{ClassName}` |
590
589
 
591
- ---
592
590
 
593
591
  ## Types
594
592
 
@@ -629,7 +627,6 @@ Abstract constructor type.
629
627
  type TAbstractConstructor<T> = abstract new (...args: any[]) => T
630
628
  ```
631
629
 
632
- ---
633
630
 
634
631
  ## Utilities
635
632
 
@@ -661,7 +658,6 @@ const files = await discoverFiles({
661
658
  // ['/path/to/project/controllers/user.controller.js', ...]
662
659
  ```
663
660
 
664
- ---
665
661
 
666
662
  ### loadClasses()
667
663
 
@@ -694,7 +690,6 @@ const classes = await loadClasses({
694
690
  // [UserController, ProductController]
695
691
  ```
696
692
 
697
- ---
698
693
 
699
694
  ### isClass()
700
695
 
@@ -723,7 +718,6 @@ for (const exported of Object.values(module)) {
723
718
  }
724
719
  ```
725
720
 
726
- ---
727
721
 
728
722
  ## Constants
729
723
 
@@ -743,7 +737,6 @@ import { BOOT_PHASES } from '@venizia/ignis-boot';
743
737
  await bootstrapper.boot({ phases: BOOT_PHASES });
744
738
  ```
745
739
 
746
- ---
747
740
 
748
741
  ## Mixin Functions
749
742
 
@@ -779,11 +772,22 @@ const app = new MyApp();
779
772
  await app.boot();
780
773
  ```
781
774
 
775
+
782
776
  ---
783
777
 
784
- ## Related Documentation
778
+ ## See Also
779
+
780
+ - **Related References:**
781
+ - [Application](./application.md) - Application lifecycle and initialization
782
+ - [Dependency Injection](./dependency-injection.md) - DI container and bindings
783
+ - [Components](./components.md) - Pluggable modules and components
784
+ - [Boot Package](/references/src-details/boot.md) - Boot package implementation details
785
+
786
+ - **Guides:**
787
+ - [Bootstrapping Concepts](/guides/core-concepts/application/bootstrapping)
788
+ - [Application Guide](/guides/core-concepts/application/)
789
+ - [Auto-Discovery](/guides/core-concepts/auto-discovery.md)
785
790
 
786
- - [Bootstrapping Concepts](/get-started/core-concepts/bootstrapping.md)
787
- - [Boot Package Reference](/references/src-details/boot.md)
788
- - [Application Guide](/get-started/core-concepts/application.md)
789
- - [Dependency Injection](/references/base/dependency-injection.md)
791
+ - **Best Practices:**
792
+ - [Application Structure](/best-practices/architecture/project-structure.md)
793
+ - [Environment Configuration](/best-practices/configuration/environment.md)