@venizia/ignis-docs 0.0.3 → 0.0.4-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 (131) 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 +406 -17
  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 +2 -2
  21. package/wiki/changelogs/2025-12-29-dynamic-binding-registration.md +104 -0
  22. package/wiki/changelogs/2025-12-29-snowflake-uid-helper.md +100 -0
  23. package/wiki/changelogs/2025-12-30-repository-enhancements.md +214 -0
  24. package/wiki/changelogs/2025-12-31-json-path-filtering-array-operators.md +214 -0
  25. package/wiki/changelogs/2025-12-31-string-id-custom-generator.md +137 -0
  26. package/wiki/changelogs/2026-01-02-default-filter-and-repository-mixins.md +418 -0
  27. package/wiki/changelogs/index.md +6 -0
  28. package/wiki/changelogs/planned-schema-migrator.md +0 -8
  29. package/wiki/{get-started/core-concepts → guides/core-concepts/application}/bootstrapping.md +18 -5
  30. package/wiki/{get-started/core-concepts/application.md → guides/core-concepts/application/index.md} +47 -104
  31. package/wiki/guides/core-concepts/components-guide.md +509 -0
  32. package/wiki/{get-started → guides}/core-concepts/components.md +24 -17
  33. package/wiki/{get-started → guides}/core-concepts/controllers.md +30 -13
  34. package/wiki/{get-started → guides}/core-concepts/dependency-injection.md +97 -0
  35. package/wiki/guides/core-concepts/persistent/datasources.md +179 -0
  36. package/wiki/guides/core-concepts/persistent/index.md +119 -0
  37. package/wiki/guides/core-concepts/persistent/models.md +241 -0
  38. package/wiki/guides/core-concepts/persistent/repositories.md +219 -0
  39. package/wiki/guides/core-concepts/persistent/transactions.md +170 -0
  40. package/wiki/{get-started → guides}/core-concepts/services.md +26 -3
  41. package/wiki/{get-started → guides/get-started}/5-minute-quickstart.md +59 -14
  42. package/wiki/guides/get-started/philosophy.md +682 -0
  43. package/wiki/guides/get-started/setup.md +157 -0
  44. package/wiki/guides/index.md +89 -0
  45. package/wiki/guides/reference/glossary.md +243 -0
  46. package/wiki/{get-started → guides/reference}/mcp-docs-server.md +0 -10
  47. package/wiki/{get-started → guides/tutorials}/building-a-crud-api.md +134 -132
  48. package/wiki/{get-started/quickstart.md → guides/tutorials/complete-installation.md} +107 -71
  49. package/wiki/guides/tutorials/ecommerce-api.md +1399 -0
  50. package/wiki/guides/tutorials/realtime-chat.md +1261 -0
  51. package/wiki/guides/tutorials/testing.md +723 -0
  52. package/wiki/index.md +176 -37
  53. package/wiki/references/base/application.md +27 -0
  54. package/wiki/references/base/bootstrapping.md +31 -26
  55. package/wiki/references/base/components.md +24 -7
  56. package/wiki/references/base/controllers.md +50 -20
  57. package/wiki/references/base/datasources.md +30 -0
  58. package/wiki/references/base/dependency-injection.md +39 -3
  59. package/wiki/references/base/filter-system/application-usage.md +224 -0
  60. package/wiki/references/base/filter-system/array-operators.md +132 -0
  61. package/wiki/references/base/filter-system/comparison-operators.md +109 -0
  62. package/wiki/references/base/filter-system/default-filter.md +428 -0
  63. package/wiki/references/base/filter-system/fields-order-pagination.md +155 -0
  64. package/wiki/references/base/filter-system/index.md +127 -0
  65. package/wiki/references/base/filter-system/json-filtering.md +197 -0
  66. package/wiki/references/base/filter-system/list-operators.md +71 -0
  67. package/wiki/references/base/filter-system/logical-operators.md +156 -0
  68. package/wiki/references/base/filter-system/null-operators.md +58 -0
  69. package/wiki/references/base/filter-system/pattern-matching.md +108 -0
  70. package/wiki/references/base/filter-system/quick-reference.md +431 -0
  71. package/wiki/references/base/filter-system/range-operators.md +63 -0
  72. package/wiki/references/base/filter-system/tips.md +190 -0
  73. package/wiki/references/base/filter-system/use-cases.md +452 -0
  74. package/wiki/references/base/index.md +90 -0
  75. package/wiki/references/base/middlewares.md +604 -0
  76. package/wiki/references/base/models.md +215 -23
  77. package/wiki/references/base/providers.md +731 -0
  78. package/wiki/references/base/repositories/advanced.md +555 -0
  79. package/wiki/references/base/repositories/index.md +228 -0
  80. package/wiki/references/base/repositories/mixins.md +331 -0
  81. package/wiki/references/base/repositories/relations.md +486 -0
  82. package/wiki/references/base/repositories.md +40 -635
  83. package/wiki/references/base/services.md +28 -4
  84. package/wiki/references/components/authentication.md +22 -2
  85. package/wiki/references/components/health-check.md +12 -0
  86. package/wiki/references/components/index.md +23 -0
  87. package/wiki/references/components/mail.md +687 -0
  88. package/wiki/references/components/request-tracker.md +16 -0
  89. package/wiki/references/components/socket-io.md +18 -0
  90. package/wiki/references/components/static-asset.md +14 -26
  91. package/wiki/references/components/swagger.md +17 -0
  92. package/wiki/references/configuration/environment-variables.md +427 -0
  93. package/wiki/references/configuration/index.md +73 -0
  94. package/wiki/references/helpers/cron.md +14 -0
  95. package/wiki/references/helpers/crypto.md +15 -0
  96. package/wiki/references/helpers/env.md +16 -0
  97. package/wiki/references/helpers/error.md +17 -0
  98. package/wiki/references/helpers/index.md +14 -0
  99. package/wiki/references/helpers/inversion.md +24 -4
  100. package/wiki/references/helpers/logger.md +19 -0
  101. package/wiki/references/helpers/network.md +11 -0
  102. package/wiki/references/helpers/queue.md +19 -0
  103. package/wiki/references/helpers/redis.md +21 -0
  104. package/wiki/references/helpers/socket-io.md +24 -5
  105. package/wiki/references/helpers/storage.md +18 -10
  106. package/wiki/references/helpers/testing.md +18 -0
  107. package/wiki/references/helpers/types.md +16 -0
  108. package/wiki/references/helpers/uid.md +167 -0
  109. package/wiki/references/helpers/worker-thread.md +16 -0
  110. package/wiki/references/index.md +177 -0
  111. package/wiki/references/quick-reference.md +634 -0
  112. package/wiki/references/src-details/boot.md +3 -3
  113. package/wiki/references/src-details/dev-configs.md +0 -4
  114. package/wiki/references/src-details/docs.md +2 -2
  115. package/wiki/references/src-details/index.md +86 -0
  116. package/wiki/references/src-details/inversion.md +1 -6
  117. package/wiki/references/src-details/mcp-server.md +3 -15
  118. package/wiki/references/utilities/index.md +86 -10
  119. package/wiki/references/utilities/jsx.md +577 -0
  120. package/wiki/references/utilities/request.md +0 -2
  121. package/wiki/references/utilities/statuses.md +740 -0
  122. package/wiki/get-started/best-practices/api-usage-examples.md +0 -266
  123. package/wiki/get-started/best-practices/architectural-patterns.md +0 -170
  124. package/wiki/get-started/best-practices/data-modeling.md +0 -177
  125. package/wiki/get-started/best-practices/deployment-strategies.md +0 -121
  126. package/wiki/get-started/best-practices/performance-optimization.md +0 -97
  127. package/wiki/get-started/best-practices/security-guidelines.md +0 -99
  128. package/wiki/get-started/core-concepts/persistent.md +0 -539
  129. package/wiki/get-started/index.md +0 -65
  130. package/wiki/get-started/philosophy.md +0 -296
  131. package/wiki/get-started/prerequisites.md +0 -113
@@ -0,0 +1,177 @@
1
+ # API Reference
2
+
3
+ Complete reference documentation for the Ignis framework. Find detailed API docs, type definitions, and usage examples for every class, component, and utility in the framework.
4
+
5
+ <div class="guide-cards">
6
+
7
+ <a href="./base/" class="guide-card highlight">
8
+ <span class="guide-icon">🏗️</span>
9
+ <h3>Base Abstractions</h3>
10
+ <p>Application, Controller, Service, Repository, Model</p>
11
+ </a>
12
+
13
+ <a href="./components/" class="guide-card">
14
+ <span class="guide-icon">🧩</span>
15
+ <h3>Components</h3>
16
+ <p>Auth, Mail, Socket.IO, Swagger, Health Check</p>
17
+ </a>
18
+
19
+ <a href="./helpers/" class="guide-card">
20
+ <span class="guide-icon">🛠️</span>
21
+ <h3>Helpers</h3>
22
+ <p>Logger, Redis, Queue, Storage, Cron, Crypto</p>
23
+ </a>
24
+
25
+ <a href="./utilities/" class="guide-card">
26
+ <span class="guide-icon">⚙️</span>
27
+ <h3>Utilities</h3>
28
+ <p>Date, Parse, Promise, Schema, Performance</p>
29
+ </a>
30
+
31
+ <a href="./configuration/" class="guide-card">
32
+ <span class="guide-icon">📝</span>
33
+ <h3>Configuration</h3>
34
+ <p>Environment variables and settings</p>
35
+ </a>
36
+
37
+ <a href="./src-details/" class="guide-card">
38
+ <span class="guide-icon">📦</span>
39
+ <h3>Framework Internals</h3>
40
+ <p>Package structure and architecture</p>
41
+ </a>
42
+
43
+ </div>
44
+
45
+ ## Find What You Need
46
+
47
+ <div class="roadmap">
48
+
49
+ <div class="roadmap-stage">
50
+ <div class="stage-header">
51
+ <span class="stage-num">1</span>
52
+ <h4>Building an API</h4>
53
+ </div>
54
+ <p><a href="./base/application">Application</a> → <a href="./base/controllers">Controllers</a> → <a href="./base/services">Services</a> → <a href="./base/repositories/">Repositories</a></p>
55
+ <span class="stage-desc">Request handling, business logic, and data access</span>
56
+ </div>
57
+
58
+ <div class="roadmap-stage">
59
+ <div class="stage-header">
60
+ <span class="stage-num">2</span>
61
+ <h4>Data Layer</h4>
62
+ </div>
63
+ <p><a href="./base/models">Models</a> → <a href="./base/datasources">DataSources</a> → <a href="./base/filter-system/">Filtering</a> → <a href="./base/repositories/relations">Relations</a></p>
64
+ <span class="stage-desc">Entities, database connections, and query building</span>
65
+ </div>
66
+
67
+ <div class="roadmap-stage">
68
+ <div class="stage-header">
69
+ <span class="stage-num">3</span>
70
+ <h4>Adding Features</h4>
71
+ </div>
72
+ <p><a href="./components/authentication">Auth</a> → <a href="./components/socket-io">Real-time</a> → <a href="./components/mail">Email</a> → <a href="./components/swagger">API Docs</a></p>
73
+ <span class="stage-desc">Pre-built components for common features</span>
74
+ </div>
75
+
76
+ <div class="roadmap-stage">
77
+ <div class="stage-header">
78
+ <span class="stage-num">4</span>
79
+ <h4>Infrastructure</h4>
80
+ </div>
81
+ <p><a href="./helpers/logger">Logging</a> → <a href="./helpers/redis">Caching</a> → <a href="./helpers/queue">Queues</a> → <a href="./helpers/cron">Scheduling</a></p>
82
+ <span class="stage-desc">Background jobs, caching, and observability</span>
83
+ </div>
84
+
85
+ <div class="roadmap-stage">
86
+ <div class="stage-header">
87
+ <span class="stage-num">5</span>
88
+ <h4>Advanced Patterns</h4>
89
+ </div>
90
+ <p><a href="./base/dependency-injection">Dependency Injection</a> → <a href="./base/providers">Custom Providers</a> → <a href="./base/middlewares">Middlewares</a> → <a href="./base/components">Components</a></p>
91
+ <span class="stage-desc">Advanced architecture patterns and customization</span>
92
+ </div>
93
+
94
+ <div class="roadmap-stage">
95
+ <div class="stage-header">
96
+ <span class="stage-num">6</span>
97
+ <h4>Production Ready</h4>
98
+ </div>
99
+ <p><a href="./base/middlewares">Error Handling</a> → <a href="./components/health-check">Health Checks</a> → <a href="./configuration/environment-variables">Configuration</a> → <a href="./base/bootstrapping">Auto-Discovery</a></p>
100
+ <span class="stage-desc">Production deployment, monitoring, and reliability</span>
101
+ </div>
102
+
103
+ <div class="roadmap-stage">
104
+ <div class="stage-header">
105
+ <span class="stage-num">7</span>
106
+ <h4>Testing & Quality</h4>
107
+ </div>
108
+ <p><a href="./helpers/testing">Unit Testing</a> → <a href="./base/repositories/advanced">Mocking & Stubs</a> → <a href="./quick-reference">Best Practices</a></p>
109
+ <span class="stage-desc">Testing strategies, quality assurance, and code review</span>
110
+ </div>
111
+
112
+ </div>
113
+
114
+ ::: tip Looking for tutorials?
115
+ Check out the [Getting Started Guide](/guides/) for step-by-step tutorials and the [Core Concepts](/guides/core-concepts/application/) for architectural explanations.
116
+ :::
117
+
118
+ ## Quick Examples
119
+
120
+ **Define a Controller:**
121
+ ```typescript
122
+ @controller({ path: '/users' })
123
+ class UserController extends BaseController {
124
+ @get({ configs: { path: '/:id' } })
125
+ getUser(c: Context) {
126
+ return c.json({ id: c.req.param('id') });
127
+ }
128
+ }
129
+ ```
130
+
131
+ **Query with Repository:**
132
+ ```typescript
133
+ const users = await userRepo.find({
134
+ where: { isActive: true },
135
+ orderBy: { createdAt: 'desc' },
136
+ limit: 10,
137
+ });
138
+ ```
139
+
140
+ **Schedule a Job:**
141
+ ```typescript
142
+ CronHelper.schedule('0 * * * *', async () => {
143
+ await cleanupExpiredSessions();
144
+ });
145
+ ```
146
+
147
+ ## Common Imports
148
+
149
+ ```typescript
150
+ // Core framework
151
+ import {
152
+ BaseApplication,
153
+ BaseController,
154
+ BaseService,
155
+ BaseRepository,
156
+ controller,
157
+ get, post, put, del,
158
+ inject,
159
+ } from '@venizia/ignis';
160
+
161
+ // Helpers
162
+ import {
163
+ LoggerFactory,
164
+ RedisHelper,
165
+ QueueHelper,
166
+ } from '@venizia/ignis-helpers';
167
+
168
+ // DI Container
169
+ import { Container } from '@venizia/ignis-inversion';
170
+ ```
171
+
172
+ ## See Also
173
+
174
+ - [Getting Started](/guides/) - New to Ignis? Start here
175
+ - [Core Concepts](/guides/core-concepts/application/) - Deep dive into architecture
176
+ - [Best Practices](/best-practices/) - Production patterns
177
+ - [Changelogs](/changelogs/) - Version history