@venizia/ignis-docs 0.2.1-0 → 0.2.1-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 (145) hide show
  1. package/content/best-practices/architectural-patterns.md +3 -3
  2. package/content/best-practices/code-style-standards/naming-conventions.md +1 -1
  3. package/content/best-practices/contribution-workflow.md +2 -2
  4. package/content/best-practices/error-handling.md +94 -89
  5. package/content/best-practices/security-guidelines.md +5 -5
  6. package/content/extensions/components/api-reference.md +22 -21
  7. package/content/extensions/components/authentication/api.md +64 -28
  8. package/content/extensions/components/authentication/errors.md +19 -5
  9. package/content/extensions/components/authentication/index.md +19 -18
  10. package/content/extensions/components/authentication/usage.md +55 -30
  11. package/content/extensions/components/authorization/api.md +351 -84
  12. package/content/extensions/components/authorization/errors.md +51 -17
  13. package/content/extensions/components/authorization/getting-started.md +227 -0
  14. package/content/extensions/components/authorization/index.md +24 -16
  15. package/content/extensions/components/authorization/usage.md +45 -21
  16. package/content/extensions/components/health-check.md +15 -9
  17. package/content/extensions/components/index.md +24 -90
  18. package/content/extensions/components/mail/api.md +105 -54
  19. package/content/extensions/components/mail/errors.md +12 -10
  20. package/content/extensions/components/mail/index.md +32 -13
  21. package/content/extensions/components/mail/usage.md +26 -18
  22. package/content/extensions/components/request-tracker.md +18 -14
  23. package/content/extensions/components/socket-io/api.md +377 -882
  24. package/content/extensions/components/socket-io/errors.md +49 -51
  25. package/content/extensions/components/socket-io/index.md +72 -88
  26. package/content/extensions/components/socket-io/usage.md +107 -117
  27. package/content/extensions/components/static-asset/api.md +83 -31
  28. package/content/extensions/components/static-asset/errors.md +18 -7
  29. package/content/extensions/components/static-asset/index.md +18 -11
  30. package/content/extensions/components/static-asset/usage.md +11 -6
  31. package/content/extensions/components/template/index.md +3 -3
  32. package/content/extensions/components/websocket/api.md +58 -27
  33. package/content/extensions/components/websocket/errors.md +3 -3
  34. package/content/extensions/components/websocket/index.md +8 -7
  35. package/content/extensions/components/websocket/usage.md +21 -8
  36. package/content/extensions/helpers/cron/index.md +8 -7
  37. package/content/extensions/helpers/crypto/index.md +16 -8
  38. package/content/extensions/helpers/crypto/reference.md +96 -24
  39. package/content/extensions/helpers/env/index.md +14 -10
  40. package/content/extensions/helpers/error/index.md +99 -23
  41. package/content/extensions/helpers/index.md +61 -47
  42. package/content/extensions/helpers/inversion/index.md +23 -6
  43. package/content/extensions/helpers/inversion/reference.md +30 -22
  44. package/content/extensions/helpers/kafka/admin.md +3 -2
  45. package/content/extensions/helpers/kafka/compile-binary.md +69 -44
  46. package/content/extensions/helpers/kafka/consumer.md +24 -21
  47. package/content/extensions/helpers/kafka/examples.md +22 -234
  48. package/content/extensions/helpers/kafka/index.md +30 -62
  49. package/content/extensions/helpers/kafka/producer.md +31 -26
  50. package/content/extensions/helpers/kafka/schema-registry.md +19 -14
  51. package/content/extensions/helpers/logger/hf-logger.md +49 -22
  52. package/content/extensions/helpers/logger/index.md +37 -12
  53. package/content/extensions/helpers/logger/pino.md +31 -11
  54. package/content/extensions/helpers/logger/reference.md +243 -52
  55. package/content/extensions/helpers/network/api.md +65 -30
  56. package/content/extensions/helpers/network/index.md +32 -11
  57. package/content/extensions/helpers/queue/index.md +17 -6
  58. package/content/extensions/helpers/queue/reference.md +52 -25
  59. package/content/extensions/helpers/redis/index.md +29 -11
  60. package/content/extensions/helpers/redis/reference.md +85 -28
  61. package/content/extensions/helpers/secrets/index.md +82 -12
  62. package/content/extensions/helpers/socket-io/api.md +40 -21
  63. package/content/extensions/helpers/socket-io/index.md +26 -10
  64. package/content/extensions/helpers/storage/api.md +42 -24
  65. package/content/extensions/helpers/storage/index.md +10 -7
  66. package/content/extensions/helpers/types/index.md +20 -7
  67. package/content/extensions/helpers/types/reference.md +53 -14
  68. package/content/extensions/helpers/uid/index.md +166 -10
  69. package/content/extensions/helpers/websocket/api.md +52 -13
  70. package/content/extensions/helpers/websocket/index.md +7 -4
  71. package/content/extensions/helpers/worker-thread/index.md +9 -5
  72. package/content/extensions/helpers/worker-thread/reference.md +20 -20
  73. package/content/extensions/index.md +38 -39
  74. package/content/extensions/src-details/mcp-server.md +96 -548
  75. package/content/guides/core-concepts/persistent/datasources.md +2 -2
  76. package/content/guides/core-concepts/persistent/index.md +5 -1
  77. package/content/guides/core-concepts/persistent/pglite.md +218 -0
  78. package/content/guides/core-concepts/persistent/postgres-drivers.md +21 -15
  79. package/content/guides/core-concepts/persistent/search-meilisearch.md +22 -12
  80. package/content/guides/core-concepts/persistent/search-typesense.md +26 -14
  81. package/content/guides/core-concepts/persistent/sqlite.md +296 -0
  82. package/content/guides/core-concepts/persistent/transactions.md +12 -11
  83. package/content/guides/get-started/5-minute-quickstart.md +59 -206
  84. package/content/guides/get-started/philosophy.md +135 -670
  85. package/content/guides/get-started/setup.md +53 -74
  86. package/content/guides/migrations/redis-helpers-migration.md +4 -3
  87. package/content/guides/migrations/scoped-rbac-migration.md +5 -5
  88. package/content/guides/migrations/unified-connectors-migration.md +7 -6
  89. package/content/guides/tutorials/realtime-chat.md +1 -1
  90. package/content/references/base/application.md +63 -21
  91. package/content/references/base/components.md +3 -3
  92. package/content/references/base/connectors.md +14 -14
  93. package/content/references/base/controllers.md +12 -12
  94. package/content/references/base/datasources-reference.md +32 -31
  95. package/content/references/base/datasources.md +6 -6
  96. package/content/references/base/dependency-injection.md +12 -11
  97. package/content/references/base/filter-system/application-usage.md +54 -30
  98. package/content/references/base/filter-system/array-operators.md +24 -46
  99. package/content/references/base/filter-system/comparison-operators.md +47 -67
  100. package/content/references/base/filter-system/default-filter.md +59 -53
  101. package/content/references/base/filter-system/fields-order-pagination.md +92 -146
  102. package/content/references/base/filter-system/index.md +25 -13
  103. package/content/references/base/filter-system/json-filtering.md +45 -184
  104. package/content/references/base/filter-system/list-operators.md +23 -53
  105. package/content/references/base/filter-system/logical-operators.md +63 -121
  106. package/content/references/base/filter-system/null-operators.md +34 -104
  107. package/content/references/base/filter-system/pattern-matching.md +40 -55
  108. package/content/references/base/filter-system/quick-reference.md +86 -198
  109. package/content/references/base/filter-system/range-operators.md +18 -46
  110. package/content/references/base/filter-system/tips.md +6 -6
  111. package/content/references/base/filter-system/use-cases.md +33 -15
  112. package/content/references/base/grpc-controllers.md +53 -17
  113. package/content/references/base/index.md +5 -3
  114. package/content/references/base/middlewares.md +11 -10
  115. package/content/references/base/models-reference.md +17 -17
  116. package/content/references/base/models.md +4 -3
  117. package/content/references/base/providers.md +8 -8
  118. package/content/references/base/repositories/advanced.md +224 -326
  119. package/content/references/base/repositories/index.md +19 -6
  120. package/content/references/base/repositories/mixins.md +5 -5
  121. package/content/references/base/repositories/relations.md +160 -293
  122. package/content/references/base/repositories/soft-deletable.md +16 -6
  123. package/content/references/base/secrets.md +17 -13
  124. package/content/references/base/services.md +6 -4
  125. package/content/references/configuration/environment-variables.md +31 -23
  126. package/content/references/configuration/index.md +6 -4
  127. package/content/references/index.md +1 -1
  128. package/content/references/utilities/duration.md +85 -0
  129. package/content/references/utilities/index.md +5 -1
  130. package/content/references/utilities/jsx-reference.md +11 -11
  131. package/content/references/utilities/jsx.md +2 -2
  132. package/content/references/utilities/module.md +78 -25
  133. package/content/references/utilities/request.md +2 -1
  134. package/content/references/utilities/retry.md +139 -0
  135. package/content/references/utilities/schema.md +2 -2
  136. package/content/references/utilities/statuses-reference.md +4 -4
  137. package/content/references/utilities/statuses.md +5 -5
  138. package/dist/mcp-server/index.js +0 -0
  139. package/dist/mcp-server/tools/github/list-project-files.tool.d.ts +1 -1
  140. package/dist/mcp-server/tools/github/list-project-files.tool.d.ts.map +1 -1
  141. package/dist/mcp-server/tools/github/list-project-files.tool.js +3 -3
  142. package/dist/mcp-server/tools/github/search-code.tool.js +1 -1
  143. package/dist/mcp-server/tools/github/verify-dependencies.tool.js +1 -1
  144. package/dist/mcp-server/tools/github/view-source-file.tool.js +1 -1
  145. package/package.json +17 -16
@@ -1,47 +1,46 @@
1
1
  # Extensions
2
2
 
3
- Extensions are optional packages and built-in modules that add functionality on top of the IGNIS core framework. They are organized into two categories:
3
+ Optional pieces you add on top of IGNIS core: components you register once, helpers you inject where you need them.
4
4
 
5
5
  ## Components
6
6
 
7
- Components are self-contained feature modules that plug into your application via the `this.component()` registration method. Each component encapsulates its own bindings, controllers, and configuration.
8
-
9
- | Component | Description | Key Features |
10
- | :--- | :--- | :--- |
11
- | [Authentication](./components/authentication/) | Identity verification | JWT, Basic, JWKS strategies |
12
- | [Authorization](./components/authorization/) | Access control | Casbin-based RBAC, per-route policies |
13
- | [Health Check](./components/health-check) | Liveness check | `GET /health`, `POST /health/ping` |
14
- | [Mail](./components/mail/) | Email delivery | Nodemailer, Mailgun, queue support |
15
- | [Request Tracker](./components/request-tracker) | Request tracing | `x-request-id` header, body parsing |
16
- | [Socket.IO](./components/socket-io/) | Real-time (Socket.IO) | Redis adapter, room-based messaging |
17
- | [Static Asset](./components/static-asset/) | File management | Upload/download, MinIO, Disk, BunS3 |
18
- | [Swagger](./components/api-reference) | API docs | OpenAPI UI, Swagger UI, Scalar UI |
19
- | [WebSocket](./components/websocket/) | Real-time (native) | Bun native WebSocket, encryption |
7
+ | Component | What it does | When you reach for it |
8
+ |---|---|---|
9
+ | [Authentication](./components/authentication/) | Verifies who is calling - JWT, Basic, JWKS strategies | A route needs to know who the caller is |
10
+ | [Authorization](./components/authorization/) | Casbin-based RBAC, per-route policies | A route needs a permission check beyond authentication |
11
+ | [Health Check](./components/health-check) | `GET /health` and `POST /health/ping` | A load balancer or Kubernetes needs a liveness probe |
12
+ | [Mail](./components/mail/) | Sends email via Nodemailer, Mailgun, or a queue | The app sends transactional or templated email |
13
+ | [Request Tracker](./components/request-tracker) | Tags every request with an ID, logs method/path/timing | Always on - registered automatically, nothing to configure |
14
+ | [Socket.IO](./components/socket-io/) | Real-time messaging over Socket.IO, Redis adapter | Clients need rooms or Socket.IO-specific features |
15
+ | [Static Asset](./components/static-asset/) | Upload/download files - MinIO, disk, or Bun S3 | The app stores or serves user-uploaded files |
16
+ | [API Reference](./components/api-reference) | Interactive OpenAPI docs, Scalar UI by default | You want a browsable UI for your REST routes |
17
+ | [WebSocket](./components/websocket/) | Native Bun WebSocket, Redis pub/sub, heartbeat | Clients need a raw WebSocket without Socket.IO |
20
18
 
21
19
  ## Helpers
22
20
 
23
- Helpers are standalone utility classes for infrastructure concerns. They extend `BaseHelper` for scoped logging and are typically used via dependency injection.
24
-
25
- | Helper | Description | Peer Dependencies |
26
- | :--- | :--- | :--- |
27
- | [Cron](./helpers/cron/) | Scheduled tasks | `cron` |
28
- | [Crypto](./helpers/crypto/) | Encryption/signing | Built-in |
29
- | [Environment](./helpers/env/) | Env var management | Built-in |
30
- | [Error](./helpers/error/) | Error utilities | Built-in |
31
- | [Inversion](./helpers/inversion/) | DI container | Built-in |
32
- | [Logger](./helpers/logger/) | Logging | `winston` |
33
- | [Network](./helpers/network/) | HTTP/TCP/UDP clients | `axios` (optional) |
34
- | [Kafka](./helpers/kafka/) | Kafka messaging | `@platformatic/kafka` |
35
- | [Queue](./helpers/queue/) | Job queues | `bullmq`, `mqtt` (optional) |
36
- | [Redis](./helpers/redis/) | Redis client | `ioredis` |
37
- | [Socket.IO](./helpers/socket-io/) | Socket.IO server | `socket.io` |
38
- | [Storage](./helpers/storage/) | File storage | `minio` (optional) |
39
- | [Types](./helpers/types/) | Shared types | Built-in |
40
- | [UID](./helpers/uid/) | Snowflake IDs | Built-in |
41
- | [WebSocket](./helpers/websocket/) | WebSocket server | Built-in |
42
- | [Worker Thread](./helpers/worker-thread/) | Worker pools | Built-in |
43
-
44
- ## See Also
45
-
46
- - [Core API](/references/) -- Base framework abstractions
47
- - [Guides](/guides/) -- Getting started and tutorials
21
+ Every peer dependency below is optional. You install one only when you use the helper that needs it.
22
+
23
+ | Helper | What it does | When you reach for it | Peer dependency |
24
+ |---|---|---|---|
25
+ | [Cron](./helpers/cron/) | Scheduled tasks | You run code on a cron schedule | `cron` |
26
+ | [Crypto](./helpers/crypto/) | Encryption and signing | You hash, encrypt, or sign data | None |
27
+ | [Environment](./helpers/env/) | Env var management | You need typed, validated env var access | None |
28
+ | [Error](./helpers/error/) | Error utilities | You throw or handle an error | None |
29
+ | [Inversion](./helpers/inversion/) | DI container | You build custom bindings or providers | None |
30
+ | [Logger](./helpers/logger/) | Logging | You need scoped, leveled logging | `winston` or `pino` |
31
+ | [Network](./helpers/network/) | HTTP/TCP/UDP clients | You call another service over HTTP, TCP, or UDP | `axios`, for the Axios client only |
32
+ | [Kafka](./helpers/kafka/) | Kafka messaging | You publish or consume Kafka topics | `@platformatic/kafka` |
33
+ | [Queue](./helpers/queue/) | Job queues | You need background or delayed work | `bullmq` or `mqtt` |
34
+ | [Redis](./helpers/redis/) | Redis client | You need a Redis connection - cache, pub/sub, locks | None - `ioredis` ships with the package |
35
+ | [Secrets](./helpers/secrets/) | Secret loading and rotation | You read secrets from Vault, dotenv, or the environment | `node-vault` or `@dotenvx/dotenvx` |
36
+ | [Socket.IO](./helpers/socket-io/) | Socket.IO server | You build a custom real-time feature | `socket.io` |
37
+ | [Storage](./helpers/storage/) | File storage | You read/write files to MinIO or disk directly | `minio`, for the MinIO backend only |
38
+ | [Types](./helpers/types/) | Shared types | You need IGNIS's shared TypeScript utility types | None |
39
+ | [UID](./helpers/uid/) | Snowflake IDs | You need unique, sortable IDs | None |
40
+ | [WebSocket](./helpers/websocket/) | WebSocket server | You build a custom real-time feature | None |
41
+ | [Worker Thread](./helpers/worker-thread/) | Worker pools | You move CPU-heavy work off the main thread | None |
42
+
43
+ ## See also
44
+
45
+ - [Core API](/references/) - Base framework abstractions
46
+ - [Guides](/guides/) - Getting started and tutorials