@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.
- package/README.md +1 -1
- package/package.json +4 -2
- package/wiki/best-practices/api-usage-examples.md +591 -0
- package/wiki/best-practices/architectural-patterns.md +415 -0
- package/wiki/best-practices/architecture-decisions.md +488 -0
- package/wiki/{get-started/best-practices → best-practices}/code-style-standards.md +406 -17
- package/wiki/{get-started/best-practices → best-practices}/common-pitfalls.md +109 -4
- package/wiki/{get-started/best-practices → best-practices}/contribution-workflow.md +34 -7
- package/wiki/best-practices/data-modeling.md +376 -0
- package/wiki/best-practices/deployment-strategies.md +698 -0
- package/wiki/best-practices/index.md +27 -0
- package/wiki/best-practices/performance-optimization.md +196 -0
- package/wiki/best-practices/security-guidelines.md +218 -0
- package/wiki/{get-started/best-practices → best-practices}/troubleshooting-tips.md +97 -1
- package/wiki/changelogs/2025-12-16-initial-architecture.md +1 -1
- package/wiki/changelogs/2025-12-16-model-repo-datasource-refactor.md +1 -1
- package/wiki/changelogs/2025-12-17-refactor.md +1 -1
- package/wiki/changelogs/2025-12-18-performance-optimizations.md +5 -5
- package/wiki/changelogs/2025-12-18-repository-validation-security.md +13 -7
- package/wiki/changelogs/2025-12-26-nested-relations-and-generics.md +2 -2
- package/wiki/changelogs/2025-12-29-dynamic-binding-registration.md +104 -0
- package/wiki/changelogs/2025-12-29-snowflake-uid-helper.md +100 -0
- package/wiki/changelogs/2025-12-30-repository-enhancements.md +214 -0
- package/wiki/changelogs/2025-12-31-json-path-filtering-array-operators.md +214 -0
- package/wiki/changelogs/2025-12-31-string-id-custom-generator.md +137 -0
- package/wiki/changelogs/2026-01-02-default-filter-and-repository-mixins.md +418 -0
- package/wiki/changelogs/index.md +6 -0
- package/wiki/changelogs/planned-schema-migrator.md +0 -8
- package/wiki/{get-started/core-concepts → guides/core-concepts/application}/bootstrapping.md +18 -5
- package/wiki/{get-started/core-concepts/application.md → guides/core-concepts/application/index.md} +47 -104
- package/wiki/guides/core-concepts/components-guide.md +509 -0
- package/wiki/{get-started → guides}/core-concepts/components.md +24 -17
- package/wiki/{get-started → guides}/core-concepts/controllers.md +30 -13
- package/wiki/{get-started → guides}/core-concepts/dependency-injection.md +97 -0
- package/wiki/guides/core-concepts/persistent/datasources.md +179 -0
- package/wiki/guides/core-concepts/persistent/index.md +119 -0
- package/wiki/guides/core-concepts/persistent/models.md +241 -0
- package/wiki/guides/core-concepts/persistent/repositories.md +219 -0
- package/wiki/guides/core-concepts/persistent/transactions.md +170 -0
- package/wiki/{get-started → guides}/core-concepts/services.md +26 -3
- package/wiki/{get-started → guides/get-started}/5-minute-quickstart.md +59 -14
- package/wiki/guides/get-started/philosophy.md +682 -0
- package/wiki/guides/get-started/setup.md +157 -0
- package/wiki/guides/index.md +89 -0
- package/wiki/guides/reference/glossary.md +243 -0
- package/wiki/{get-started → guides/reference}/mcp-docs-server.md +0 -10
- package/wiki/{get-started → guides/tutorials}/building-a-crud-api.md +134 -132
- package/wiki/{get-started/quickstart.md → guides/tutorials/complete-installation.md} +107 -71
- package/wiki/guides/tutorials/ecommerce-api.md +1399 -0
- package/wiki/guides/tutorials/realtime-chat.md +1261 -0
- package/wiki/guides/tutorials/testing.md +723 -0
- package/wiki/index.md +176 -37
- package/wiki/references/base/application.md +27 -0
- package/wiki/references/base/bootstrapping.md +31 -26
- package/wiki/references/base/components.md +24 -7
- package/wiki/references/base/controllers.md +50 -20
- package/wiki/references/base/datasources.md +30 -0
- package/wiki/references/base/dependency-injection.md +39 -3
- package/wiki/references/base/filter-system/application-usage.md +224 -0
- package/wiki/references/base/filter-system/array-operators.md +132 -0
- package/wiki/references/base/filter-system/comparison-operators.md +109 -0
- package/wiki/references/base/filter-system/default-filter.md +428 -0
- package/wiki/references/base/filter-system/fields-order-pagination.md +155 -0
- package/wiki/references/base/filter-system/index.md +127 -0
- package/wiki/references/base/filter-system/json-filtering.md +197 -0
- package/wiki/references/base/filter-system/list-operators.md +71 -0
- package/wiki/references/base/filter-system/logical-operators.md +156 -0
- package/wiki/references/base/filter-system/null-operators.md +58 -0
- package/wiki/references/base/filter-system/pattern-matching.md +108 -0
- package/wiki/references/base/filter-system/quick-reference.md +431 -0
- package/wiki/references/base/filter-system/range-operators.md +63 -0
- package/wiki/references/base/filter-system/tips.md +190 -0
- package/wiki/references/base/filter-system/use-cases.md +452 -0
- package/wiki/references/base/index.md +90 -0
- package/wiki/references/base/middlewares.md +604 -0
- package/wiki/references/base/models.md +215 -23
- package/wiki/references/base/providers.md +731 -0
- package/wiki/references/base/repositories/advanced.md +555 -0
- package/wiki/references/base/repositories/index.md +228 -0
- package/wiki/references/base/repositories/mixins.md +331 -0
- package/wiki/references/base/repositories/relations.md +486 -0
- package/wiki/references/base/repositories.md +40 -635
- package/wiki/references/base/services.md +28 -4
- package/wiki/references/components/authentication.md +22 -2
- package/wiki/references/components/health-check.md +12 -0
- package/wiki/references/components/index.md +23 -0
- package/wiki/references/components/mail.md +687 -0
- package/wiki/references/components/request-tracker.md +16 -0
- package/wiki/references/components/socket-io.md +18 -0
- package/wiki/references/components/static-asset.md +14 -26
- package/wiki/references/components/swagger.md +17 -0
- package/wiki/references/configuration/environment-variables.md +427 -0
- package/wiki/references/configuration/index.md +73 -0
- package/wiki/references/helpers/cron.md +14 -0
- package/wiki/references/helpers/crypto.md +15 -0
- package/wiki/references/helpers/env.md +16 -0
- package/wiki/references/helpers/error.md +17 -0
- package/wiki/references/helpers/index.md +14 -0
- package/wiki/references/helpers/inversion.md +24 -4
- package/wiki/references/helpers/logger.md +19 -0
- package/wiki/references/helpers/network.md +11 -0
- package/wiki/references/helpers/queue.md +19 -0
- package/wiki/references/helpers/redis.md +21 -0
- package/wiki/references/helpers/socket-io.md +24 -5
- package/wiki/references/helpers/storage.md +18 -10
- package/wiki/references/helpers/testing.md +18 -0
- package/wiki/references/helpers/types.md +16 -0
- package/wiki/references/helpers/uid.md +167 -0
- package/wiki/references/helpers/worker-thread.md +16 -0
- package/wiki/references/index.md +177 -0
- package/wiki/references/quick-reference.md +634 -0
- package/wiki/references/src-details/boot.md +3 -3
- package/wiki/references/src-details/dev-configs.md +0 -4
- package/wiki/references/src-details/docs.md +2 -2
- package/wiki/references/src-details/index.md +86 -0
- package/wiki/references/src-details/inversion.md +1 -6
- package/wiki/references/src-details/mcp-server.md +3 -15
- package/wiki/references/utilities/index.md +86 -10
- package/wiki/references/utilities/jsx.md +577 -0
- package/wiki/references/utilities/request.md +0 -2
- package/wiki/references/utilities/statuses.md +740 -0
- package/wiki/get-started/best-practices/api-usage-examples.md +0 -266
- package/wiki/get-started/best-practices/architectural-patterns.md +0 -170
- package/wiki/get-started/best-practices/data-modeling.md +0 -177
- package/wiki/get-started/best-practices/deployment-strategies.md +0 -121
- package/wiki/get-started/best-practices/performance-optimization.md +0 -97
- package/wiki/get-started/best-practices/security-guidelines.md +0 -99
- package/wiki/get-started/core-concepts/persistent.md +0 -539
- package/wiki/get-started/index.md +0 -65
- package/wiki/get-started/philosophy.md +0 -296
- 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
|