@clidey/dory 0.21.2 → 0.22.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 (168) hide show
  1. package/dist/api-playground-demo.mdx +119 -0
  2. package/dist/api-reference/asyncapi.json +324 -0
  3. package/dist/api-reference/openapi.json +366 -0
  4. package/dist/api-reference/operations/create.mdx +5 -0
  5. package/dist/api-reference/operations/delete.mdx +5 -0
  6. package/dist/api-reference/operations/get.mdx +5 -0
  7. package/dist/api-reference/operations/update.mdx +5 -0
  8. package/dist/api-reference/websocket-operations/receive-chat-message.mdx +5 -0
  9. package/dist/api-reference/websocket-operations/receive-notifications.mdx +5 -0
  10. package/dist/api-reference/websocket-operations/receive-presence-update.mdx +5 -0
  11. package/dist/api-reference/websocket-operations/send-chat-message.mdx +5 -0
  12. package/dist/api-reference/websocket-operations/send-presence-update.mdx +5 -0
  13. package/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  14. package/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  15. package/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  16. package/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  17. package/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  18. package/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  19. package/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  20. package/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  21. package/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  22. package/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  23. package/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  24. package/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  25. package/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  26. package/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  27. package/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  28. package/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  29. package/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  30. package/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  31. package/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  32. package/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  33. package/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  34. package/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  35. package/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  36. package/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  37. package/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  38. package/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  39. package/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  40. package/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  41. package/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  42. package/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  43. package/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  44. package/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  45. package/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  46. package/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  47. package/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  48. package/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  49. package/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  50. package/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  51. package/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  52. package/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  53. package/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  54. package/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  55. package/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  56. package/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  57. package/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  58. package/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  59. package/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  60. package/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  61. package/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  62. package/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  63. package/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  64. package/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  65. package/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  66. package/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  67. package/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  68. package/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  69. package/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  70. package/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  71. package/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  72. package/dist/assets/__vite-browser-external-BIHI7g3E.js +1 -0
  73. package/dist/assets/_basePickBy-CsnA5_xx.js +1 -0
  74. package/dist/assets/_baseUniq-COwFna6s.js +1 -0
  75. package/dist/assets/api-playground-demo-Ct5XK2u1.js +45 -0
  76. package/dist/assets/api-playground-demo-vBae5R-d.js +119 -0
  77. package/dist/assets/arc-Dy4kITED.js +1 -0
  78. package/dist/assets/architectureDiagram-IEHRJDOE-BiaWQpzt.js +36 -0
  79. package/dist/assets/blockDiagram-JOT3LUYC-7LfUOsM7.js +121 -0
  80. package/dist/assets/c4Diagram-VJAJSXHY-Ca-3deDF.js +10 -0
  81. package/dist/assets/channel-j6jMzwSu.js +1 -0
  82. package/dist/assets/chunk-4BMEZGHF-Cln31Q_z.js +1 -0
  83. package/dist/assets/chunk-A2AXSNBT-Cj4U7K4I.js +164 -0
  84. package/dist/assets/chunk-AEK57VVT-1kn9120k.js +220 -0
  85. package/dist/assets/chunk-D6G4REZN-DMgQaOLS.js +1 -0
  86. package/dist/assets/chunk-RZ5BOZE2-DDd-DrSb.js +1 -0
  87. package/dist/assets/chunk-XZIHB7SX-sVdgMrEr.js +1 -0
  88. package/dist/assets/classDiagram-GIVACNV2-B9ObtIrc.js +1 -0
  89. package/dist/assets/classDiagram-v2-COTLJTTW-B9ObtIrc.js +1 -0
  90. package/dist/assets/clone-UOttdbrS.js +1 -0
  91. package/dist/assets/create-D-Wjvs-T.js +6 -0
  92. package/dist/assets/create-DpzlgYHc.js +4 -0
  93. package/dist/assets/cytoscape.esm-BY7v1xhs.js +331 -0
  94. package/dist/assets/dagre-OKDRZEBW-C4q12sCc.js +4 -0
  95. package/dist/assets/delete-DwAmDeAN.js +4 -0
  96. package/dist/assets/delete-cbziNMWs.js +5 -0
  97. package/dist/assets/diagram-SSKATNLV-BxNC6sGs.js +43 -0
  98. package/dist/assets/diagram-VNBRO52H-CukGDk3b.js +24 -0
  99. package/dist/assets/dory.jpeg +0 -0
  100. package/dist/assets/erDiagram-Q7BY3M3F-TiiVq0dv.js +60 -0
  101. package/dist/assets/favicon-Z67lNtJu.svg +75 -0
  102. package/dist/assets/features-6EEoDloV.js +269 -0
  103. package/dist/assets/features-EZwrzTnN.js +441 -0
  104. package/dist/assets/flowDiagram-4HSFHLVR-DykkGbol.js +161 -0
  105. package/dist/assets/ganttDiagram-APWFNJXF-Bqp95-S3.js +257 -0
  106. package/dist/assets/get-BeAg4Qrr.js +5 -0
  107. package/dist/assets/get-Dj1eDs2i.js +4 -0
  108. package/dist/assets/gitGraphDiagram-7IBYFJ6S-BiYVs9VI.js +65 -0
  109. package/dist/assets/graph-LkKKMaDZ.js +1 -0
  110. package/dist/assets/index-CGd7uPvh.css +1 -0
  111. package/dist/assets/index-vOROtq-e.js +9596 -0
  112. package/dist/assets/infoDiagram-PH2N3AL5-EA7h3wZa.js +2 -0
  113. package/dist/assets/init-Gi6I4Gst.js +1 -0
  114. package/dist/assets/introduction-CzXlzjWa.js +38 -0
  115. package/dist/assets/introduction-ylYJcPz3.js +45 -0
  116. package/dist/assets/journeyDiagram-U35MCT3I-BZiVuCZu.js +138 -0
  117. package/dist/assets/kanban-definition-NDS4AKOZ-SCdQ8OjR.js +88 -0
  118. package/dist/assets/layout-C9-9-M2q.js +1 -0
  119. package/dist/assets/linear-CTbdhYd1.js +1 -0
  120. package/dist/assets/mermaid.core-DUFqLK_I.js +213 -0
  121. package/dist/assets/mindmap-definition-ALO5MXBD-BPbKEbjk.js +95 -0
  122. package/dist/assets/ordinal-Cboi1Yqb.js +1 -0
  123. package/dist/assets/pieDiagram-IB7DONF6-DPg1sNm8.js +30 -0
  124. package/dist/assets/quadrantDiagram-7GDLP6J5-DmtJM50d.js +7 -0
  125. package/dist/assets/radar-MK3ICKWK-DnO5LA4B.js +128 -0
  126. package/dist/assets/receive-chat-message-B2jsY1P6.js +4 -0
  127. package/dist/assets/receive-chat-message-BeaC4eqS.js +5 -0
  128. package/dist/assets/receive-notifications-BouRLPFj.js +4 -0
  129. package/dist/assets/receive-notifications-DYnXRRBz.js +5 -0
  130. package/dist/assets/receive-presence-update-CRgeSUpk.js +5 -0
  131. package/dist/assets/receive-presence-update-UEm47KAG.js +4 -0
  132. package/dist/assets/requirementDiagram-KVF5MWMF-iNwUJLq2.js +64 -0
  133. package/dist/assets/sankeyDiagram-QLVOVGJD-DWLyAD59.js +10 -0
  134. package/dist/assets/send-chat-message-Bvf2XJiv.js +5 -0
  135. package/dist/assets/send-chat-message-FDmVETeD.js +4 -0
  136. package/dist/assets/send-presence-update-26clGQ0z.js +5 -0
  137. package/dist/assets/send-presence-update-DeywSKYu.js +4 -0
  138. package/dist/assets/sequenceDiagram-X6HHIX6F-HyRN2_g-.js +122 -0
  139. package/dist/assets/stateDiagram-DGXRK772-DdMr0V93.js +1 -0
  140. package/dist/assets/stateDiagram-v2-YXO3MK2T-D6kpXRiR.js +1 -0
  141. package/dist/assets/timeline-definition-BDJGKUSR-CDf8nWgC.js +61 -0
  142. package/dist/assets/update-BEeNDeXY.js +4 -0
  143. package/dist/assets/update-CykJMYvN.js +5 -0
  144. package/dist/assets/websocket-playground-demo-4pj7mj19.js +135 -0
  145. package/dist/assets/websocket-playground-demo-F71LN60e.js +61 -0
  146. package/dist/assets/xychartDiagram-VJFVF3MP-BY_uTq9r.js +7 -0
  147. package/dist/dory.json +59 -0
  148. package/dist/favicon.svg +75 -0
  149. package/dist/features.mdx +440 -0
  150. package/dist/frontmatter.json +77 -0
  151. package/dist/index.html +55 -0
  152. package/dist/introduction.mdx +44 -0
  153. package/dist/llms.txt +561 -0
  154. package/dist/websocket-playground-demo.mdx +135 -0
  155. package/package.json +7 -9
  156. package/.claude/settings.json +0 -29
  157. package/.claude/settings.local.json +0 -12
  158. package/.github/ISSUE_TEMPLATE/anything-else.md +0 -10
  159. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -39
  160. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  161. package/.github/dependabot.yml +0 -11
  162. package/.github/workflows/claude.yml +0 -37
  163. package/k8s/Dockerfile +0 -14
  164. package/k8s/config/nginx-default.conf +0 -22
  165. package/k8s/dev.Dockerfile +0 -16
  166. package/k8s/docs.Dockerfile +0 -15
  167. package/public/demo.mov +0 -0
  168. /package/{assets → dist/logo}/logo.svg +0 -0
package/dist/llms.txt ADDED
@@ -0,0 +1,561 @@
1
+ # introduction.mdx
2
+ ## Introduction
3
+
4
+ Welcome to Docucod and Dory documentation
5
+
6
+ # Introduction
7
+
8
+ ## Welcome to Docucod and Dory
9
+
10
+ This documentation is powered by two complementary tools:
11
+
12
+ 1. **Docucod** - An AI-powered documentation assistant that automatically generates and maintains documentation
13
+ 2. **Dory** - A lightweight static site generator specifically designed to deploy Docucod-generated documentation
14
+
15
+ ## What is Docucod?
16
+
17
+ Docucod analyzes your codebase and automatically:
18
+ - Generates comprehensive documentation
19
+ - Updates existing documentation when code changes
20
+ - Maintains consistent style and formatting
21
+ - Ensures accuracy and completeness
22
+
23
+ ## What is Dory?
24
+
25
+ Dory is a lightweight static site generator built for developers who want fast, clean, and customizable documentation. It was created specifically to deploy Docucod-generated documentation with:
26
+
27
+ - 🧠 **Simple** — Drop in `.mdx` files and configure one `dory.json`
28
+ - ⚡ **Fast** — Instant hot reload in dev, quick static builds for prod
29
+ - 🌐 **Portable** — No SSR, no lock-in, deploy anywhere
30
+ - 🧩 **Flexible** — Hackable theme, readable codebase, minimal magic
31
+
32
+ ## Documentation Structure
33
+
34
+ This documentation is organized to help you:
35
+ - Get started quickly with both Docucod and Dory
36
+ - Understand core concepts and features
37
+ - Follow best practices and examples
38
+ - Find detailed API references
39
+
40
+ Let's begin exploring Docucod and Dory's capabilities!
41
+
42
+ ---
43
+
44
+
45
+ # features.mdx
46
+ ## Features
47
+
48
+ Overview of available components and features
49
+
50
+ ## Headings Examples
51
+
52
+ ```
53
+ # Heading 1
54
+ ```
55
+ # Heading 1
56
+
57
+ ```
58
+ ## Heading 2
59
+ ```
60
+ # Heading 2
61
+
62
+ ```
63
+ ### Heading 3
64
+ ```
65
+ # Heading 3
66
+ ```
67
+ #### Heading 4
68
+ ```
69
+ # Heading 4
70
+ ```
71
+ ##### Heading 5
72
+ ```
73
+ # Heading 5
74
+ ```
75
+ ###### Heading 6
76
+ ```
77
+ # Heading 6
78
+
79
+ ## Lists Examples
80
+
81
+ ```
82
+ - List item 1
83
+ - List item 2
84
+ - List item 3
85
+ ```
86
+
87
+ - List item 1
88
+ - List item 2
89
+ - List item 3
90
+
91
+ ```
92
+ 1. List item 1
93
+ 2. List item 2
94
+ 3. List item 3
95
+ ```
96
+
97
+ 1. List item 1
98
+ 2. List item 2
99
+ 3. List item 3
100
+
101
+ ### Images
102
+
103
+ ```
104
+
105
+ ```
106
+
107
+ ## Code Components
108
+
109
+ ### Code Block
110
+ ```
111
+ function example() {
112
+ return "Hello World";
113
+ }
114
+ ```
115
+
116
+ ### Code Group Block
117
+
118
+ ```
119
+ function example(): string {
120
+ return "Hello World";
121
+ }
122
+ ```
123
+ ```
124
+ function example() {
125
+ return "Hello World";
126
+ }
127
+ ```
128
+
129
+ ## Interactive Components
130
+
131
+ ### Mermaid
132
+
133
+ ```
134
+ mermaid
135
+ graph TD
136
+
137
+ %% Main Start
138
+ Start([Start Process]) --> Validate[Validate Input]
139
+
140
+ %% Decision Point
141
+ Validate -->|Valid| ProcessData{Is Data Clean?}
142
+ Validate -->|Invalid| Error[Show Error Message]
143
+
144
+ %% Clean Data Branch
145
+ ProcessData -->|Yes| Clean[Clean Data]
146
+ Clean --> Analyze[Analyze Data]
147
+
148
+ %% Dirty Data Branch
149
+ ProcessData -->|No| Notify[Notify User]
150
+ Notify --> Wait[Wait for Input]
151
+ Wait --> Validate
152
+
153
+ %% Parallel Branches After Analysis
154
+ Analyze --> Split1 & Split2
155
+
156
+ subgraph Parallel Tasks
157
+ Split1[Generate Report] --> Merge
158
+ Split2[Update Dashboard] --> Merge
159
+ end
160
+
161
+ Merge --> Decision2{Is More Input Needed?}
162
+ Decision2 -->|Yes| WaitMore[Wait for More Input]
163
+ WaitMore --> Validate
164
+ Decision2 -->|No| End([End Process])
165
+
166
+ %% Style and Class Definitions
167
+ classDef decision fill:#f9f,stroke:#333,stroke-width:2px;
168
+ class ProcessData,Decision2 decision;
169
+
170
+ ```
171
+
172
+ Note: Mermaid should be inside a code block with type "mermaid"
173
+
174
+ ```
175
+ graph TD
176
+
177
+ %% Main Start
178
+ Start([Start Process]) --> Validate[Validate Input]
179
+
180
+ %% Decision Point
181
+ Validate -->|Valid| ProcessData{Is Data Clean?}
182
+ Validate -->|Invalid| Error[Show Error Message]
183
+
184
+ %% Clean Data Branch
185
+ ProcessData -->|Yes| Clean[Clean Data]
186
+ Clean --> Analyze[Analyze Data]
187
+
188
+ %% Dirty Data Branch
189
+ ProcessData -->|No| Notify[Notify User]
190
+ Notify --> Wait[Wait for Input]
191
+ Wait --> Validate
192
+
193
+ %% Parallel Branches After Analysis
194
+ Analyze --> Split1 & Split2
195
+
196
+ subgraph Parallel Tasks
197
+ Split1[Generate Report] --> Merge
198
+ Split2[Update Dashboard] --> Merge
199
+ end
200
+
201
+ Merge --> Decision2{Is More Input Needed?}
202
+ Decision2 -->|Yes| WaitMore[Wait for More Input]
203
+ WaitMore --> Validate
204
+ Decision2 -->|No| End([End Process])
205
+
206
+ %% Style and Class Definitions
207
+ classDef decision fill:#f9f,stroke:#333,stroke-width:2px;
208
+ class ProcessData,Decision2 decision;
209
+
210
+ ```
211
+
212
+ ### Accordion
213
+
214
+ ```
215
+
216
+ This is the content of the first accordion section.
217
+
218
+ This is the content of the second accordion section.
219
+
220
+ ```
221
+
222
+ This is the content of the first accordion section.
223
+
224
+ This is the content of the second accordion section.
225
+
226
+ ### Callouts
227
+
228
+ ```
229
+
230
+ This is a note callout with important information.
231
+
232
+ ```
233
+
234
+ This is a note callout with important information.
235
+
236
+ ```
237
+
238
+ This is a warning callout for critical information.
239
+
240
+ ```
241
+
242
+ This is a warning callout for critical information.
243
+
244
+ ```
245
+
246
+ This is an info callout for general information.
247
+
248
+ ```
249
+
250
+ This is an info callout for general information.
251
+
252
+ ```
253
+
254
+ This is a tip callout for helpful suggestions.
255
+
256
+ ```
257
+
258
+ This is a tip callout for helpful suggestions.
259
+
260
+ ```
261
+
262
+ This is a check callout for completed items.
263
+
264
+ ```
265
+
266
+ This is a check callout for completed items.
267
+
268
+ ### Cards
269
+ ```
270
+
271
+ ```
272
+
273
+ ### Expandable
274
+
275
+ ```
276
+
277
+ This is an expandable section that can be toggled.
278
+
279
+ ```
280
+
281
+ This is an expandable section that can be toggled.
282
+
283
+ ### Source
284
+
285
+ ```
286
+
287
+ ```
288
+
289
+ ## Special Components
290
+
291
+ ### Grids
292
+
293
+ #### Rows
294
+ ```
295
+
296
+ ```
297
+
298
+ #### Columns
299
+
300
+ ```
301
+
302
+ ```
303
+
304
+ ### Latex
305
+
306
+ ```
307
+
308
+ E = mc^2
309
+
310
+ ```
311
+
312
+ E = mc^2
313
+
314
+ ### Tables
315
+
316
+ ```
317
+ | Property | Description |
318
+ | -------- | ------------------------------------- |
319
+ | Name | Full name of user |
320
+ | Age | Reported age |
321
+ | Joined | Whether the user joined the community |
322
+ ```
323
+
324
+ | Property | Description |
325
+ | -------- | ------------------------------------- |
326
+ | Name | Full name of user |
327
+ | Age | Reported age |
328
+ | Joined | Whether the user joined the community |
329
+
330
+ ### Steps
331
+
332
+ ```
333
+
334
+ This is the first step in the process.
335
+
336
+ This is the second step in the process.
337
+
338
+ ```
339
+
340
+ This is the first step in the process.
341
+
342
+ This is the second step in the process.
343
+
344
+ ### Icons
345
+
346
+ ```
347
+
348
+ ```
349
+
350
+ ---
351
+
352
+
353
+ # websocket-playground-demo.mdx
354
+ ## WebSocket Playground Demo
355
+
356
+ Interactive WebSocket playground for testing real-time connections
357
+
358
+ # WebSocket Playground Demo
359
+
360
+ This page demonstrates the WebSocket playground component with various configuration options and real-time connection testing capabilities.
361
+
362
+ ## Basic WebSocket Connection
363
+
364
+ ## WebSocket with Subprotocols
365
+
366
+ ## WebSocket with Authentication
367
+
368
+ ## Real-time Chat Example
369
+
370
+ ## Testing Instructions
371
+
372
+ 1. **Connect**: Click the "Connect" button to establish a WebSocket connection
373
+ 2. **Send Messages**: Type messages in the input field and click "Send" or press Enter
374
+ 3. **View Messages**: All sent and received messages appear in the message history with timestamps
375
+ 4. **Configuration**: Use the tabs to configure headers, subprotocols, and authentication
376
+ 5. **Server Selection**: Choose different servers from the dropdown to test various endpoints
377
+
378
+ ## Features
379
+
380
+ - **Real-time Connection**: Live WebSocket connection with status indicators
381
+ - **Message History**: View all sent/received messages with timestamps
382
+ - **Custom Headers**: Add authentication and custom headers
383
+ - **Subprotocols**: Configure WebSocket subprotocols
384
+ - **Multiple Servers**: Easy switching between different WebSocket endpoints
385
+ - **Error Handling**: Clear error messages for connection issues
386
+ - **Binary Support**: Handles both text and binary messages
387
+
388
+ ## Message Types
389
+
390
+ The playground supports different message types:
391
+ - **Sent**: Messages you send (blue background)
392
+ - **Received**: Messages from the server (green background)
393
+ - **Error**: Connection or sending errors (red background)
394
+ - **System**: Connection status updates (gray background)
395
+
396
+ ## Example Messages
397
+
398
+ Try sending these JSON messages to test structured data:
399
+
400
+ ```
401
+ {
402
+ "type": "chat",
403
+ "message": "Hello, WebSocket!",
404
+ "userId": "user123",
405
+ "timestamp": "2024-01-15T10:30:00Z"
406
+ }
407
+ ```
408
+
409
+ ```
410
+ {
411
+ "type": "presence",
412
+ "status": "online",
413
+ "userId": "user123"
414
+ }
415
+ ```
416
+
417
+ ```
418
+ {
419
+ "type": "notification",
420
+ "title": "Test Notification",
421
+ "message": "This is a test notification",
422
+ "level": "info"
423
+ }
424
+ ```
425
+
426
+ ---
427
+
428
+
429
+ # api-reference/operations/create.mdx
430
+ ## POST /products
431
+
432
+ Create a new product
433
+
434
+
435
+
436
+ ---
437
+
438
+
439
+ # api-reference/operations/get.mdx
440
+ ---
441
+ title: 'GET /products'
442
+ description: 'Get a list of products'
443
+ openapi: 'GET /products'
444
+ ---
445
+
446
+ ---
447
+
448
+
449
+ # api-reference/operations/update.mdx
450
+ ---
451
+ title: 'PUT /products/{id}'
452
+ description: 'Update a product'
453
+ openapi: 'PUT /products/{id}'
454
+ ---
455
+
456
+ ---
457
+
458
+
459
+ # api-reference/operations/delete.mdx
460
+ ---
461
+ title: 'DELETE /products/{id}'
462
+ description: 'Delete a product'
463
+ openapi: 'DELETE /products/{id}'
464
+ ---
465
+
466
+ ---
467
+
468
+
469
+ # api-reference/websocket-operations/send-chat-message.mdx
470
+ ---
471
+ title: 'PUBLISH /chat'
472
+ description: 'Send a chat message to other users'
473
+ asyncapi: 'publish /chat'
474
+ ---
475
+
476
+ ---
477
+
478
+
479
+ # api-reference/websocket-operations/receive-chat-message.mdx
480
+ ---
481
+ title: 'SUBSCRIBE /chat'
482
+ description: 'Subscribe to receive chat messages from other users'
483
+ asyncapi: 'subscribe /chat'
484
+ ---
485
+
486
+ ---
487
+
488
+
489
+ # api-reference/websocket-operations/receive-notifications.mdx
490
+ ---
491
+ title: 'SUBSCRIBE /notifications'
492
+ description: 'Subscribe to receive system notifications'
493
+ asyncapi: 'subscribe /notifications'
494
+ ---
495
+
496
+ ---
497
+
498
+
499
+ # api-reference/websocket-operations/send-presence-update.mdx
500
+ ---
501
+ title: 'PUBLISH /presence'
502
+ description: 'Send a presence update'
503
+ asyncapi: 'publish /presence'
504
+ ---
505
+
506
+ ---
507
+
508
+
509
+ # api-reference/websocket-operations/receive-presence-update.mdx
510
+ ---
511
+ title: 'SUBSCRIBE /presence'
512
+ description: 'Subscribe to receive user presence updates'
513
+ asyncapi: 'subscribe /presence'
514
+ ---
515
+
516
+ ---
517
+
518
+
519
+ # api-playground-demo.mdx
520
+ ## API Playground Demo
521
+
522
+ Interactive API playground for testing HTTP endpoints
523
+
524
+ # API Playground Demo
525
+
526
+ This page demonstrates the new HTTP API playground that allows you to test API endpoints directly from the documentation.
527
+
528
+ ## Basic GET Request
529
+
530
+ Test a simple GET request with query parameters:
531
+
532
+ ## POST Request with Body
533
+
534
+ Test a POST request with a JSON body:
535
+
536
+ ## Authenticated Endpoint
537
+
538
+ Test an endpoint that requires authentication:
539
+
540
+ ## Features
541
+
542
+ The API playground provides:
543
+
544
+ - **Interactive Request Configuration**: Set parameters, headers, request body, and authentication
545
+ - **Multiple Auth Types**: Support for Bearer token, API key, and Basic authentication
546
+ - **Real-time Response**: See actual HTTP responses with status codes, headers, and formatted JSON
547
+ - **Request Timing**: Monitor request duration for performance analysis
548
+ - **Error Handling**: Clear error messages for failed requests
549
+ - **Copy-Paste Ready**: Generate curl commands and code examples
550
+
551
+ ## Usage in Documentation
552
+
553
+ To add a playground to your API documentation, use the `APIPlayground` component:
554
+
555
+ ```
556
+
557
+ ```
558
+
559
+ The playground seamlessly integrates with your existing API documentation and provides a Postman-like experience directly in the docs.
560
+
561
+ ---
@@ -0,0 +1,135 @@
1
+ ---
2
+ title: 'WebSocket Playground Demo'
3
+ description: 'Interactive WebSocket playground for testing real-time connections'
4
+ ---
5
+
6
+ # WebSocket Playground Demo
7
+
8
+ This page demonstrates the WebSocket playground component with various configuration options and real-time connection testing capabilities.
9
+
10
+ ## Basic WebSocket Connection
11
+
12
+ <WebSocketPlayground
13
+ url="/ws/chat"
14
+ title="Basic Chat WebSocket"
15
+ description="Connect to a WebSocket server and send/receive messages in real-time"
16
+ servers={[
17
+ {
18
+ url: "wss://echo.websocket.org",
19
+ description: "WebSocket Echo Server"
20
+ },
21
+ {
22
+ url: "wss://ws.postman-echo.com/raw",
23
+ description: "Postman Echo WebSocket"
24
+ }
25
+ ]}
26
+ />
27
+
28
+ ## WebSocket with Subprotocols
29
+
30
+ <WebSocketPlayground
31
+ url="/ws/protocol"
32
+ title="WebSocket with Subprotocols"
33
+ description="WebSocket connection with custom subprotocols for specialized communication"
34
+ subprotocols={["chat", "v1.0"]}
35
+ servers={[
36
+ {
37
+ url: "wss://echo.websocket.org",
38
+ description: "Echo Server with Subprotocols"
39
+ }
40
+ ]}
41
+ />
42
+
43
+ ## WebSocket with Authentication
44
+
45
+ <WebSocketPlayground
46
+ url="/ws/secure"
47
+ title="Authenticated WebSocket"
48
+ description="WebSocket connection with authentication headers"
49
+ authType="bearer"
50
+ headers={{
51
+ "User-Agent": "Dory WebSocket Client",
52
+ "X-Client-Version": "1.0.0"
53
+ }}
54
+ servers={[
55
+ {
56
+ url: "wss://echo.websocket.org",
57
+ description: "Secure Echo Server"
58
+ }
59
+ ]}
60
+ />
61
+
62
+ ## Real-time Chat Example
63
+
64
+ <WebSocketPlayground
65
+ url="/chat"
66
+ title="Real-time Chat"
67
+ description="Connect to a chat server and participate in real-time conversations"
68
+ subprotocols={["chat.v1", "json"]}
69
+ headers={{
70
+ "X-Client-Type": "web",
71
+ "X-Protocol-Version": "1.0"
72
+ }}
73
+ servers={[
74
+ {
75
+ url: "wss://echo.websocket.org",
76
+ description: "Chat Echo Server"
77
+ }
78
+ ]}
79
+ />
80
+
81
+ ## Testing Instructions
82
+
83
+ 1. **Connect**: Click the "Connect" button to establish a WebSocket connection
84
+ 2. **Send Messages**: Type messages in the input field and click "Send" or press Enter
85
+ 3. **View Messages**: All sent and received messages appear in the message history with timestamps
86
+ 4. **Configuration**: Use the tabs to configure headers, subprotocols, and authentication
87
+ 5. **Server Selection**: Choose different servers from the dropdown to test various endpoints
88
+
89
+ ## Features
90
+
91
+ - **Real-time Connection**: Live WebSocket connection with status indicators
92
+ - **Message History**: View all sent/received messages with timestamps
93
+ - **Custom Headers**: Add authentication and custom headers
94
+ - **Subprotocols**: Configure WebSocket subprotocols
95
+ - **Multiple Servers**: Easy switching between different WebSocket endpoints
96
+ - **Error Handling**: Clear error messages for connection issues
97
+ - **Binary Support**: Handles both text and binary messages
98
+
99
+ ## Message Types
100
+
101
+ The playground supports different message types:
102
+ - **Sent**: Messages you send (blue background)
103
+ - **Received**: Messages from the server (green background)
104
+ - **Error**: Connection or sending errors (red background)
105
+ - **System**: Connection status updates (gray background)
106
+
107
+ ## Example Messages
108
+
109
+ Try sending these JSON messages to test structured data:
110
+
111
+ ```json
112
+ {
113
+ "type": "chat",
114
+ "message": "Hello, WebSocket!",
115
+ "userId": "user123",
116
+ "timestamp": "2024-01-15T10:30:00Z"
117
+ }
118
+ ```
119
+
120
+ ```json
121
+ {
122
+ "type": "presence",
123
+ "status": "online",
124
+ "userId": "user123"
125
+ }
126
+ ```
127
+
128
+ ```json
129
+ {
130
+ "type": "notification",
131
+ "title": "Test Notification",
132
+ "message": "This is a test notification",
133
+ "level": "info"
134
+ }
135
+ ```
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@clidey/dory",
3
3
  "private": false,
4
- "version": "0.21.2",
4
+ "version": "0.22.0",
5
5
  "type": "module",
6
6
  "description": "A CLI tool for building and previewing documentation sites",
7
7
  "keywords": [
@@ -24,12 +24,6 @@
24
24
  "bugs": {
25
25
  "url": "https://github.com/clidey/dory/issues"
26
26
  },
27
- "scripts": {
28
- "dev": "vite",
29
- "build": "tsc -b && vite build",
30
- "preview": "vite preview",
31
- "publish": "npm publish --access public"
32
- },
33
27
  "dependencies": {
34
28
  "@algolia/autocomplete-core": "^1.19.2",
35
29
  "@fortawesome/fontawesome-svg-core": "^6.7.2",
@@ -68,8 +62,12 @@
68
62
  "vite-plugin-mdx": "^3.6.1",
69
63
  "wouter-preact": "^3.7.1"
70
64
  },
71
- "packageManager": "pnpm@10.10.0+sha512.d615db246fe70f25dcfea6d8d73dee782ce23e2245e3c4f6f888249fb568149318637dca73c2c5c8ef2a4ca0d5657fb9567188bfab47f566d1ee6ce987815c39",
72
65
  "devDependencies": {
73
66
  "@types/node": "^24.0.12"
67
+ },
68
+ "scripts": {
69
+ "dev": "vite",
70
+ "build": "tsc -b && vite build",
71
+ "preview": "vite preview"
74
72
  }
75
- }
73
+ }