@brainfish-ai/devdoc 0.1.41 → 0.1.43
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/ai-agents/.claude/skills/bootstrap-docs/SKILL.md +710 -79
- package/ai-agents/.claude/skills/check-docs/SKILL.md +83 -8
- package/ai-agents/.claude/skills/create-doc/SKILL.md +267 -55
- package/ai-agents/.claude/skills/update-doc/SKILL.md +162 -63
- package/ai-agents/.cursor/rules/devdoc-bootstrap.mdc +145 -15
- package/ai-agents/.cursor/rules/devdoc-create.mdc +108 -57
- package/ai-agents/.cursor/rules/devdoc-update.mdc +93 -70
- package/ai-agents/.cursor/rules/devdoc.mdc +21 -0
- package/ai-agents/schemas/docs.schema.json +332 -0
- package/ai-agents/schemas/theme.schema.json +243 -0
- package/dist/cli/commands/create.js +4 -9
- package/dist/cli/commands/deploy.js +50 -25
- package/dist/cli/commands/dev.js +19 -10
- package/package.json +3 -2
- package/renderer/app/api/assets/[...path]/route.js +108 -0
- package/renderer/app/api/assets/route.js +114 -0
- package/renderer/app/api/assets/upload/route.js +163 -0
- package/renderer/app/api/auth-schemes/route.js +58 -0
- package/renderer/app/api/chat/route.js +759 -0
- package/renderer/app/api/codegen/route.js +52 -0
- package/renderer/app/api/collections/route.js +675 -0
- package/renderer/app/api/debug/route.js +47 -0
- package/renderer/app/api/deploy/route.js +199 -0
- package/renderer/app/api/device/route.js +36 -0
- package/renderer/app/api/docs/route.js +205 -0
- package/renderer/app/api/domains/add/route.js +121 -0
- package/renderer/app/api/domains/lookup/route.js +43 -0
- package/renderer/app/api/domains/remove/route.js +89 -0
- package/renderer/app/api/domains/status/route.js +140 -0
- package/renderer/app/api/domains/verify/route.js +168 -0
- package/renderer/app/api/keys/regenerate/route.js +71 -0
- package/renderer/app/api/local-assets/[...path]/route.js +108 -0
- package/renderer/app/api/openapi-spec/route.js +73 -0
- package/renderer/app/api/projects/[slug]/route.js +129 -0
- package/renderer/app/api/projects/[slug]/stats/route.js +80 -0
- package/renderer/app/api/projects/register/route.js +176 -0
- package/renderer/app/api/proxy/route.js +139 -0
- package/renderer/app/api/proxy-stream/route.js +156 -0
- package/renderer/app/api/redirects/route.js +35 -0
- package/renderer/app/api/schema/route.js +85 -0
- package/renderer/app/api/subdomains/check/route.js +158 -0
- package/renderer/app/api/suggestions/route.js +175 -0
- package/renderer/app/layout.js +47 -0
- package/renderer/app/llms-full.txt/route.js +257 -0
- package/renderer/app/llms.txt/route.js +219 -0
- package/renderer/app/page.js +12 -0
- package/renderer/app/robots.txt/route.js +66 -0
- package/renderer/app/sitemap.xml/route.js +145 -0
- package/renderer/components/docs/index.js +8 -0
- package/renderer/components/docs/mdx/accordion.js +113 -0
- package/renderer/components/docs/mdx/badge.js +72 -0
- package/renderer/components/docs/mdx/callouts.js +137 -0
- package/renderer/components/docs/mdx/cards.js +175 -0
- package/renderer/components/docs/mdx/changelog.js +100 -0
- package/renderer/components/docs/mdx/code-block.js +147 -0
- package/renderer/components/docs/mdx/code-group.js +287 -0
- package/renderer/components/docs/mdx/file-embeds.js +82 -0
- package/renderer/components/docs/mdx/frame.js +59 -0
- package/renderer/components/docs/mdx/highlight.js +90 -0
- package/renderer/components/docs/mdx/iframe.js +69 -0
- package/renderer/components/docs/mdx/image.js +135 -0
- package/renderer/components/docs/mdx/index.js +134 -0
- package/renderer/components/docs/mdx/landing.js +315 -0
- package/renderer/components/docs/mdx/mermaid.js +212 -0
- package/renderer/components/docs/mdx/param-field.js +112 -0
- package/renderer/components/docs/mdx/steps.js +74 -0
- package/renderer/components/docs/mdx/tabs.js +50 -0
- package/renderer/components/docs/mdx-renderer.js +77 -0
- package/renderer/components/docs/navigation/breadcrumbs.js +64 -0
- package/renderer/components/docs/navigation/index.js +6 -0
- package/renderer/components/docs/navigation/page-nav.js +57 -0
- package/renderer/components/docs/navigation/sidebar.js +375 -0
- package/renderer/components/docs/navigation/toc.js +89 -0
- package/renderer/components/docs/notice.js +77 -0
- package/renderer/components/docs-header.js +202 -0
- package/renderer/components/docs-viewer/agent/agent-chat.js +1930 -0
- package/renderer/components/docs-viewer/agent/cards/debug-context-card.js +107 -0
- package/renderer/components/docs-viewer/agent/cards/endpoint-context-card.js +57 -0
- package/renderer/components/docs-viewer/agent/cards/index.js +45 -0
- package/renderer/components/docs-viewer/agent/cards/response-options-card.js +154 -0
- package/renderer/components/docs-viewer/agent/cards/types.js +22 -0
- package/renderer/components/docs-viewer/agent/chat-message.js +2 -0
- package/renderer/components/docs-viewer/agent/index.js +4 -0
- package/renderer/components/docs-viewer/agent/messages/assistant-message.js +108 -0
- package/renderer/components/docs-viewer/agent/messages/chat-message.js +34 -0
- package/renderer/components/docs-viewer/agent/messages/index.js +6 -0
- package/renderer/components/docs-viewer/agent/messages/tool-call-display.js +1065 -0
- package/renderer/components/docs-viewer/agent/messages/types.js +2 -0
- package/renderer/components/docs-viewer/agent/messages/typing-indicator.js +26 -0
- package/renderer/components/docs-viewer/agent/messages/user-message.js +37 -0
- package/renderer/components/docs-viewer/code-editor/{index.tsx → index.js} +1 -1
- package/renderer/components/docs-viewer/code-editor/notes-mode.js +1338 -0
- package/renderer/components/docs-viewer/content/changelog-page.js +297 -0
- package/renderer/components/docs-viewer/content/doc-page.js +264 -0
- package/renderer/components/docs-viewer/content/documentation-viewer.js +14 -0
- package/renderer/components/docs-viewer/content/index.js +29 -0
- package/renderer/components/docs-viewer/content/not-found-page.js +300 -0
- package/renderer/components/docs-viewer/content/request-details.js +528 -0
- package/renderer/components/docs-viewer/content/sections/auth.js +108 -0
- package/renderer/components/docs-viewer/content/sections/body.js +80 -0
- package/renderer/components/docs-viewer/content/sections/headers.js +64 -0
- package/renderer/components/docs-viewer/content/sections/overview.js +56 -0
- package/renderer/components/docs-viewer/content/sections/parameters.js +64 -0
- package/renderer/components/docs-viewer/content/sections/responses.js +91 -0
- package/renderer/components/docs-viewer/global-auth-modal.js +427 -0
- package/renderer/components/docs-viewer/index.js +1552 -0
- package/renderer/components/docs-viewer/playground/auth-editor.js +418 -0
- package/renderer/components/docs-viewer/playground/body-editor.js +240 -0
- package/renderer/components/docs-viewer/playground/code-editor.js +135 -0
- package/renderer/components/docs-viewer/playground/code-snippet.js +393 -0
- package/renderer/components/docs-viewer/playground/graphql-playground.js +734 -0
- package/renderer/components/docs-viewer/playground/index.js +682 -0
- package/renderer/components/docs-viewer/playground/key-value-editor.js +317 -0
- package/renderer/components/docs-viewer/playground/method-selector.js +65 -0
- package/renderer/components/docs-viewer/playground/request-builder.js +181 -0
- package/renderer/components/docs-viewer/playground/request-tabs.js +240 -0
- package/renderer/components/docs-viewer/playground/response-cards/idle-card.js +42 -0
- package/renderer/components/docs-viewer/playground/response-cards/index.js +72 -0
- package/renderer/components/docs-viewer/playground/response-cards/loading-card.js +24 -0
- package/renderer/components/docs-viewer/playground/response-cards/network-error-card.js +28 -0
- package/renderer/components/docs-viewer/playground/response-cards/response-body-card.js +308 -0
- package/renderer/components/docs-viewer/playground/response-cards/types.js +9 -0
- package/renderer/components/docs-viewer/playground/response-viewer.js +18 -0
- package/renderer/components/docs-viewer/search/index.js +2 -0
- package/renderer/components/docs-viewer/search/search-dialog.js +367 -0
- package/renderer/components/docs-viewer/search/use-search.js +89 -0
- package/renderer/components/docs-viewer/shared/markdown-renderer.js +423 -0
- package/renderer/components/docs-viewer/shared/method-badge.js +23 -0
- package/renderer/components/docs-viewer/shared/schema-viewer.js +321 -0
- package/renderer/components/docs-viewer/sidebar/collection-tree.js +222 -0
- package/renderer/components/docs-viewer/sidebar/endpoint-options.js +512 -0
- package/renderer/components/docs-viewer/sidebar/index.js +196 -0
- package/renderer/components/docs-viewer/sidebar/right-sidebar.js +163 -0
- package/renderer/components/docs-viewer/sidebar/sidebar-group.js +87 -0
- package/renderer/components/docs-viewer/sidebar/sidebar-item.js +172 -0
- package/renderer/components/docs-viewer/sidebar/sidebar-section.js +31 -0
- package/renderer/components/theme-provider.js +10 -0
- package/renderer/components/theme-toggle.js +106 -0
- package/renderer/components/ui/badge.js +29 -0
- package/renderer/components/ui/button.js +40 -0
- package/renderer/components/ui/dialog.js +50 -0
- package/renderer/components/ui/dropdown-menu.js +143 -0
- package/renderer/components/ui/input.js +12 -0
- package/renderer/components/ui/label.js +13 -0
- package/renderer/components/ui/navigation-menu.js +83 -0
- package/renderer/components/ui/select.js +116 -0
- package/renderer/components/ui/spinner.js +92 -0
- package/renderer/components/ui/tabs.js +34 -0
- package/renderer/components/ui/tooltip.js +43 -0
- package/renderer/hooks/use-code-copy.js +76 -0
- package/renderer/hooks/use-openapi-title.js +33 -0
- package/renderer/lib/api-docs/agent/index.js +4 -0
- package/renderer/lib/api-docs/agent/indexer.js +254 -0
- package/renderer/lib/api-docs/agent/spec-summary.js +227 -0
- package/renderer/lib/api-docs/agent/types.js +5 -0
- package/renderer/lib/api-docs/auth/auth-context.js +157 -0
- package/renderer/lib/api-docs/auth/auth-storage.js +66 -0
- package/renderer/lib/api-docs/auth/crypto.js +64 -0
- package/renderer/lib/api-docs/auth/index.js +3 -0
- package/renderer/lib/api-docs/code-editor/db.js +145 -0
- package/renderer/lib/api-docs/code-editor/hooks.js +254 -0
- package/renderer/lib/api-docs/code-editor/{index.ts → index.js} +3 -4
- package/renderer/lib/api-docs/code-editor/mode-context.js +154 -0
- package/renderer/lib/api-docs/code-editor/types.js +53 -0
- package/renderer/lib/api-docs/codegen/definitions.js +258 -0
- package/renderer/lib/api-docs/codegen/har.js +171 -0
- package/renderer/lib/api-docs/codegen/index.js +118 -0
- package/renderer/lib/api-docs/factories.js +136 -0
- package/renderer/lib/api-docs/{index.ts → index.js} +5 -10
- package/renderer/lib/api-docs/mobile-context.js +79 -0
- package/renderer/lib/api-docs/navigation-context.js +62 -0
- package/renderer/lib/api-docs/parsers/graphql/index.js +50 -0
- package/renderer/lib/api-docs/parsers/graphql/parser.js +350 -0
- package/renderer/lib/api-docs/parsers/graphql/transformer.js +215 -0
- package/renderer/lib/api-docs/parsers/graphql/types.js +46 -0
- package/renderer/lib/api-docs/parsers/openapi/dereferencer.js +43 -0
- package/renderer/lib/api-docs/parsers/openapi/extractors/auth.js +486 -0
- package/renderer/lib/api-docs/parsers/openapi/extractors/body.js +295 -0
- package/renderer/lib/api-docs/parsers/openapi/extractors/index.js +132 -0
- package/renderer/lib/api-docs/parsers/openapi/index.js +127 -0
- package/renderer/lib/api-docs/parsers/openapi/transformer.js +192 -0
- package/renderer/lib/api-docs/parsers/openapi/validator.js +24 -0
- package/renderer/lib/api-docs/playground/context.js +65 -0
- package/renderer/lib/api-docs/playground/navigation-context.js +74 -0
- package/renderer/lib/api-docs/playground/request-builder.js +163 -0
- package/renderer/lib/api-docs/playground/request-runner.js +224 -0
- package/renderer/lib/api-docs/playground/types.js +5 -0
- package/renderer/lib/api-docs/types.js +23 -0
- package/renderer/lib/api-docs/utils.js +212 -0
- package/renderer/lib/cache.js +157 -0
- package/renderer/lib/docs/config/domain-schema.js +161 -0
- package/renderer/lib/docs/config/index.js +5 -0
- package/renderer/lib/docs/config/loader.js +113 -0
- package/renderer/lib/docs/config/schema.js +269 -0
- package/renderer/lib/docs/index.js +8 -0
- package/renderer/lib/docs/mdx/compiler.js +128 -0
- package/renderer/lib/docs/mdx/frontmatter.js +73 -0
- package/renderer/lib/docs/mdx/index.js +8 -0
- package/renderer/lib/docs/navigation/generator.js +269 -0
- package/renderer/lib/docs/navigation/index.js +4 -0
- package/renderer/lib/docs/navigation/types.js +9 -0
- package/renderer/lib/docs-navigation-context.js +40 -0
- package/renderer/lib/multi-tenant/context.js +80 -0
- package/renderer/lib/storage/blob.js +767 -0
- package/renderer/lib/utils/icons.js +30 -0
- package/renderer/lib/utils.js +5 -0
- package/renderer/next.config.js +62 -0
- package/renderer/tsconfig.json +23 -5
- package/renderer/app/api/assets/[...path]/route.ts +0 -123
- package/renderer/app/api/assets/route.ts +0 -124
- package/renderer/app/api/assets/upload/route.ts +0 -177
- package/renderer/app/api/auth-schemes/route.ts +0 -77
- package/renderer/app/api/chat/route.ts +0 -858
- package/renderer/app/api/codegen/route.ts +0 -72
- package/renderer/app/api/collections/route.ts +0 -1002
- package/renderer/app/api/debug/route.ts +0 -53
- package/renderer/app/api/deploy/route.ts +0 -234
- package/renderer/app/api/device/route.ts +0 -42
- package/renderer/app/api/docs/route.ts +0 -201
- package/renderer/app/api/domains/add/route.ts +0 -132
- package/renderer/app/api/domains/lookup/route.ts +0 -43
- package/renderer/app/api/domains/remove/route.ts +0 -100
- package/renderer/app/api/domains/status/route.ts +0 -158
- package/renderer/app/api/domains/verify/route.ts +0 -181
- package/renderer/app/api/keys/regenerate/route.ts +0 -80
- package/renderer/app/api/local-assets/[...path]/route.ts +0 -122
- package/renderer/app/api/openapi-spec/route.ts +0 -151
- package/renderer/app/api/projects/[slug]/route.ts +0 -153
- package/renderer/app/api/projects/[slug]/stats/route.ts +0 -96
- package/renderer/app/api/projects/register/route.ts +0 -152
- package/renderer/app/api/proxy/route.ts +0 -149
- package/renderer/app/api/proxy-stream/route.ts +0 -168
- package/renderer/app/api/redirects/route.ts +0 -47
- package/renderer/app/api/schema/route.ts +0 -73
- package/renderer/app/api/subdomains/check/route.ts +0 -172
- package/renderer/app/api/suggestions/route.ts +0 -144
- package/renderer/app/layout.tsx +0 -54
- package/renderer/app/llms-full.txt/route.ts +0 -346
- package/renderer/app/llms.txt/route.ts +0 -279
- package/renderer/app/page.tsx +0 -14
- package/renderer/app/robots.txt/route.ts +0 -84
- package/renderer/app/sitemap.xml/route.ts +0 -199
- package/renderer/components/docs/index.ts +0 -12
- package/renderer/components/docs/mdx/accordion.tsx +0 -169
- package/renderer/components/docs/mdx/badge.tsx +0 -132
- package/renderer/components/docs/mdx/callouts.tsx +0 -154
- package/renderer/components/docs/mdx/cards.tsx +0 -241
- package/renderer/components/docs/mdx/changelog.tsx +0 -120
- package/renderer/components/docs/mdx/code-block.tsx +0 -186
- package/renderer/components/docs/mdx/code-group.tsx +0 -421
- package/renderer/components/docs/mdx/file-embeds.tsx +0 -105
- package/renderer/components/docs/mdx/frame.tsx +0 -112
- package/renderer/components/docs/mdx/highlight.tsx +0 -151
- package/renderer/components/docs/mdx/iframe.tsx +0 -134
- package/renderer/components/docs/mdx/image.tsx +0 -235
- package/renderer/components/docs/mdx/index.ts +0 -237
- package/renderer/components/docs/mdx/landing.tsx +0 -684
- package/renderer/components/docs/mdx/mermaid.tsx +0 -240
- package/renderer/components/docs/mdx/param-field.tsx +0 -200
- package/renderer/components/docs/mdx/steps.tsx +0 -113
- package/renderer/components/docs/mdx/tabs.tsx +0 -86
- package/renderer/components/docs/mdx-renderer.tsx +0 -100
- package/renderer/components/docs/navigation/breadcrumbs.tsx +0 -76
- package/renderer/components/docs/navigation/index.ts +0 -8
- package/renderer/components/docs/navigation/page-nav.tsx +0 -64
- package/renderer/components/docs/navigation/sidebar.tsx +0 -515
- package/renderer/components/docs/navigation/toc.tsx +0 -113
- package/renderer/components/docs/notice.tsx +0 -105
- package/renderer/components/docs-header.tsx +0 -278
- package/renderer/components/docs-viewer/agent/agent-chat.tsx +0 -2076
- package/renderer/components/docs-viewer/agent/cards/debug-context-card.tsx +0 -90
- package/renderer/components/docs-viewer/agent/cards/endpoint-context-card.tsx +0 -49
- package/renderer/components/docs-viewer/agent/cards/index.tsx +0 -50
- package/renderer/components/docs-viewer/agent/cards/response-options-card.tsx +0 -212
- package/renderer/components/docs-viewer/agent/cards/types.ts +0 -84
- package/renderer/components/docs-viewer/agent/chat-message.tsx +0 -17
- package/renderer/components/docs-viewer/agent/index.tsx +0 -6
- package/renderer/components/docs-viewer/agent/messages/assistant-message.tsx +0 -119
- package/renderer/components/docs-viewer/agent/messages/chat-message.tsx +0 -46
- package/renderer/components/docs-viewer/agent/messages/index.ts +0 -17
- package/renderer/components/docs-viewer/agent/messages/tool-call-display.tsx +0 -721
- package/renderer/components/docs-viewer/agent/messages/types.ts +0 -61
- package/renderer/components/docs-viewer/agent/messages/typing-indicator.tsx +0 -24
- package/renderer/components/docs-viewer/agent/messages/user-message.tsx +0 -51
- package/renderer/components/docs-viewer/code-editor/notes-mode.tsx +0 -1283
- package/renderer/components/docs-viewer/content/changelog-page.tsx +0 -331
- package/renderer/components/docs-viewer/content/doc-page.tsx +0 -367
- package/renderer/components/docs-viewer/content/documentation-viewer.tsx +0 -17
- package/renderer/components/docs-viewer/content/index.tsx +0 -29
- package/renderer/components/docs-viewer/content/not-found-page.tsx +0 -330
- package/renderer/components/docs-viewer/content/request-details.tsx +0 -330
- package/renderer/components/docs-viewer/content/sections/auth.tsx +0 -69
- package/renderer/components/docs-viewer/content/sections/body.tsx +0 -66
- package/renderer/components/docs-viewer/content/sections/headers.tsx +0 -43
- package/renderer/components/docs-viewer/content/sections/overview.tsx +0 -40
- package/renderer/components/docs-viewer/content/sections/parameters.tsx +0 -43
- package/renderer/components/docs-viewer/content/sections/responses.tsx +0 -87
- package/renderer/components/docs-viewer/global-auth-modal.tsx +0 -352
- package/renderer/components/docs-viewer/index.tsx +0 -1662
- package/renderer/components/docs-viewer/playground/auth-editor.tsx +0 -280
- package/renderer/components/docs-viewer/playground/body-editor.tsx +0 -221
- package/renderer/components/docs-viewer/playground/code-editor.tsx +0 -224
- package/renderer/components/docs-viewer/playground/code-snippet.tsx +0 -387
- package/renderer/components/docs-viewer/playground/graphql-playground.tsx +0 -745
- package/renderer/components/docs-viewer/playground/index.tsx +0 -671
- package/renderer/components/docs-viewer/playground/key-value-editor.tsx +0 -261
- package/renderer/components/docs-viewer/playground/method-selector.tsx +0 -60
- package/renderer/components/docs-viewer/playground/request-builder.tsx +0 -179
- package/renderer/components/docs-viewer/playground/request-tabs.tsx +0 -237
- package/renderer/components/docs-viewer/playground/response-cards/idle-card.tsx +0 -21
- package/renderer/components/docs-viewer/playground/response-cards/index.tsx +0 -93
- package/renderer/components/docs-viewer/playground/response-cards/loading-card.tsx +0 -16
- package/renderer/components/docs-viewer/playground/response-cards/network-error-card.tsx +0 -23
- package/renderer/components/docs-viewer/playground/response-cards/response-body-card.tsx +0 -268
- package/renderer/components/docs-viewer/playground/response-cards/types.ts +0 -82
- package/renderer/components/docs-viewer/playground/response-viewer.tsx +0 -43
- package/renderer/components/docs-viewer/search/index.ts +0 -2
- package/renderer/components/docs-viewer/search/search-dialog.tsx +0 -331
- package/renderer/components/docs-viewer/search/use-search.ts +0 -117
- package/renderer/components/docs-viewer/shared/markdown-renderer.tsx +0 -431
- package/renderer/components/docs-viewer/shared/method-badge.tsx +0 -41
- package/renderer/components/docs-viewer/shared/schema-viewer.tsx +0 -349
- package/renderer/components/docs-viewer/sidebar/collection-tree.tsx +0 -259
- package/renderer/components/docs-viewer/sidebar/endpoint-options.tsx +0 -316
- package/renderer/components/docs-viewer/sidebar/index.tsx +0 -282
- package/renderer/components/docs-viewer/sidebar/right-sidebar.tsx +0 -202
- package/renderer/components/docs-viewer/sidebar/sidebar-group.tsx +0 -118
- package/renderer/components/docs-viewer/sidebar/sidebar-item.tsx +0 -212
- package/renderer/components/docs-viewer/sidebar/sidebar-section.tsx +0 -38
- package/renderer/components/theme-provider.tsx +0 -11
- package/renderer/components/theme-toggle.tsx +0 -76
- package/renderer/components/ui/badge.tsx +0 -46
- package/renderer/components/ui/button.tsx +0 -59
- package/renderer/components/ui/dialog.tsx +0 -118
- package/renderer/components/ui/dropdown-menu.tsx +0 -257
- package/renderer/components/ui/input.tsx +0 -21
- package/renderer/components/ui/label.tsx +0 -24
- package/renderer/components/ui/navigation-menu.tsx +0 -168
- package/renderer/components/ui/select.tsx +0 -190
- package/renderer/components/ui/spinner.tsx +0 -114
- package/renderer/components/ui/tabs.tsx +0 -66
- package/renderer/components/ui/tooltip.tsx +0 -61
- package/renderer/hooks/use-code-copy.ts +0 -88
- package/renderer/hooks/use-openapi-title.ts +0 -44
- package/renderer/lib/api-docs/agent/index.ts +0 -6
- package/renderer/lib/api-docs/agent/indexer.ts +0 -323
- package/renderer/lib/api-docs/agent/spec-summary.ts +0 -335
- package/renderer/lib/api-docs/agent/types.ts +0 -116
- package/renderer/lib/api-docs/auth/auth-context.tsx +0 -225
- package/renderer/lib/api-docs/auth/auth-storage.ts +0 -87
- package/renderer/lib/api-docs/auth/crypto.ts +0 -89
- package/renderer/lib/api-docs/auth/index.ts +0 -4
- package/renderer/lib/api-docs/code-editor/db.ts +0 -164
- package/renderer/lib/api-docs/code-editor/hooks.ts +0 -266
- package/renderer/lib/api-docs/code-editor/mode-context.tsx +0 -207
- package/renderer/lib/api-docs/code-editor/types.ts +0 -105
- package/renderer/lib/api-docs/codegen/definitions.ts +0 -297
- package/renderer/lib/api-docs/codegen/har.ts +0 -251
- package/renderer/lib/api-docs/codegen/index.ts +0 -159
- package/renderer/lib/api-docs/factories.ts +0 -170
- package/renderer/lib/api-docs/mobile-context.tsx +0 -112
- package/renderer/lib/api-docs/navigation-context.tsx +0 -88
- package/renderer/lib/api-docs/parsers/graphql/README.md +0 -129
- package/renderer/lib/api-docs/parsers/graphql/index.ts +0 -91
- package/renderer/lib/api-docs/parsers/graphql/parser.ts +0 -491
- package/renderer/lib/api-docs/parsers/graphql/transformer.ts +0 -246
- package/renderer/lib/api-docs/parsers/graphql/types.ts +0 -283
- package/renderer/lib/api-docs/parsers/openapi/README.md +0 -32
- package/renderer/lib/api-docs/parsers/openapi/dereferencer.ts +0 -60
- package/renderer/lib/api-docs/parsers/openapi/extractors/auth.ts +0 -574
- package/renderer/lib/api-docs/parsers/openapi/extractors/body.ts +0 -403
- package/renderer/lib/api-docs/parsers/openapi/extractors/index.ts +0 -232
- package/renderer/lib/api-docs/parsers/openapi/index.ts +0 -171
- package/renderer/lib/api-docs/parsers/openapi/transformer.ts +0 -278
- package/renderer/lib/api-docs/parsers/openapi/validator.ts +0 -31
- package/renderer/lib/api-docs/playground/context.tsx +0 -107
- package/renderer/lib/api-docs/playground/navigation-context.tsx +0 -124
- package/renderer/lib/api-docs/playground/request-builder.ts +0 -223
- package/renderer/lib/api-docs/playground/request-runner.ts +0 -282
- package/renderer/lib/api-docs/playground/types.ts +0 -35
- package/renderer/lib/api-docs/types.ts +0 -269
- package/renderer/lib/api-docs/utils.ts +0 -311
- package/renderer/lib/cache.ts +0 -193
- package/renderer/lib/docs/config/domain-schema.ts +0 -260
- package/renderer/lib/docs/config/index.ts +0 -43
- package/renderer/lib/docs/config/loader.ts +0 -142
- package/renderer/lib/docs/config/schema.ts +0 -308
- package/renderer/lib/docs/index.ts +0 -12
- package/renderer/lib/docs/mdx/compiler.ts +0 -176
- package/renderer/lib/docs/mdx/frontmatter.ts +0 -91
- package/renderer/lib/docs/mdx/index.ts +0 -26
- package/renderer/lib/docs/navigation/generator.ts +0 -348
- package/renderer/lib/docs/navigation/index.ts +0 -12
- package/renderer/lib/docs/navigation/types.ts +0 -123
- package/renderer/lib/docs-navigation-context.tsx +0 -80
- package/renderer/lib/multi-tenant/context.ts +0 -105
- package/renderer/lib/storage/blob.ts +0 -1083
- package/renderer/lib/utils/icons.ts +0 -48
- package/renderer/lib/utils.ts +0 -6
- package/renderer/next.config.ts +0 -76
|
@@ -1,26 +1,20 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: update-doc
|
|
3
|
-
description: Update existing documentation by
|
|
3
|
+
description: Update existing documentation by searching codebase for current implementation.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
## Instructions
|
|
7
7
|
|
|
8
8
|
When user wants to update documentation:
|
|
9
9
|
|
|
10
|
-
### Step 0: Read Context
|
|
10
|
+
### Step 0: Read Context
|
|
11
11
|
|
|
12
|
-
**
|
|
12
|
+
**Read `.devdoc/context.json` if it exists:**
|
|
13
13
|
- Use `product.name` for product references
|
|
14
14
|
- Apply `terminology.glossary` for correct terms
|
|
15
15
|
- Avoid `terminology.avoidTerms`
|
|
16
16
|
- Match `documentation.voice` for writing style
|
|
17
17
|
|
|
18
|
-
**Then, read `.devdoc/code-graph.json` if it exists:**
|
|
19
|
-
- Compare documented signatures vs code-graph exports
|
|
20
|
-
- Check if new exports need documentation
|
|
21
|
-
- Verify types match code-graph definitions
|
|
22
|
-
- Find new examples to include
|
|
23
|
-
|
|
24
18
|
### Step 1: Understand What to Update
|
|
25
19
|
|
|
26
20
|
Ask the user:
|
|
@@ -47,21 +41,34 @@ Based on their choice:
|
|
|
47
41
|
- Rewrite for clarity
|
|
48
42
|
- Other (describe)"
|
|
49
43
|
|
|
50
|
-
#### For Codebase Sync:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
Compare
|
|
44
|
+
#### For Codebase Sync (Search Real Files):
|
|
45
|
+
|
|
46
|
+
**Step 2a: Search for source files related to documented topics:**
|
|
47
|
+
```bash
|
|
48
|
+
# Find all exported functions/classes
|
|
49
|
+
rg "export (function|class|const|interface|type)" --type ts -l
|
|
50
|
+
|
|
51
|
+
# Find specific topic files
|
|
52
|
+
git ls-files | grep -iE "(auth|user|api)"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**Step 2b: Read both doc files AND source files:**
|
|
56
|
+
1. Read the doc file to see what's documented
|
|
57
|
+
2. Search and read the corresponding source file
|
|
58
|
+
3. Compare documented vs actual implementation
|
|
59
|
+
|
|
60
|
+
**Step 2c: Generate comparison:**
|
|
61
|
+
```
|
|
62
|
+
DOCUMENTED (from docs/api/users.mdx):
|
|
63
|
+
- createUser(name: string, email: string)
|
|
64
|
+
|
|
65
|
+
ACTUAL (from src/lib/users.ts):
|
|
66
|
+
- createUser(options: CreateUserInput)
|
|
67
|
+
|
|
68
|
+
→ SIGNATURE MISMATCH - needs update
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Compare documentation against actual source:
|
|
65
72
|
- Function signatures changed?
|
|
66
73
|
- New exports not documented?
|
|
67
74
|
- Removed features still documented?
|
|
@@ -84,67 +91,137 @@ Compare documentation against code-graph:
|
|
|
84
91
|
- "What's the problem you're seeing?"
|
|
85
92
|
- Analyze and propose fixes
|
|
86
93
|
|
|
87
|
-
### Step 3:
|
|
94
|
+
### Step 3: Detect Feature Flags & Duplicates
|
|
95
|
+
|
|
96
|
+
**Search for feature flags in source:**
|
|
97
|
+
```bash
|
|
98
|
+
rg -l "featureFlag|feature_flag|isEnabled|FF_" --type ts
|
|
99
|
+
rg "if.*\(.*feature|process\.env\.FEATURE" --type ts
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Search for duplicate/similar features:**
|
|
103
|
+
```bash
|
|
104
|
+
rg "export.*(login|authenticate|signIn)" --type ts -l
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Include in sync report:**
|
|
88
108
|
|
|
89
|
-
|
|
109
|
+
### Step 4: Generate Sync Report (From File Search)
|
|
110
|
+
|
|
111
|
+
**Compare docs against actual source files:**
|
|
90
112
|
|
|
91
113
|
```
|
|
92
114
|
## Documentation Sync Report
|
|
93
115
|
|
|
94
|
-
### Signature Changes (from
|
|
95
|
-
- `docs/api/users.mdx
|
|
116
|
+
### Signature Changes (from source files)
|
|
117
|
+
- `docs/api/users.mdx` vs `src/lib/users.ts`:
|
|
96
118
|
- Documented: `createUser(name, email)`
|
|
97
|
-
-
|
|
119
|
+
- Source file: `createUser(options: CreateUserInput)`
|
|
120
|
+
- Action: Update signature and params
|
|
98
121
|
|
|
99
|
-
### New Exports (in
|
|
100
|
-
-
|
|
101
|
-
-
|
|
102
|
-
- Type: `SessionConfig` - Not documented
|
|
103
|
-
|
|
104
|
-
### Removed (in docs, not in code-graph)
|
|
105
|
-
- `legacyAuth()` - Removed from codebase
|
|
106
|
-
- Type: `OldUserFormat` - No longer exists
|
|
122
|
+
### New Exports (in source, not in docs)
|
|
123
|
+
- `src/lib/auth.ts`: `refreshToken()` - Not documented
|
|
124
|
+
- `src/lib/users.ts`: `deleteUser()` - Not documented
|
|
107
125
|
|
|
108
|
-
###
|
|
109
|
-
- `
|
|
110
|
-
- `AuthToken`: Changed `expiresAt` type
|
|
111
|
-
|
|
112
|
-
### New Endpoints (from code-graph.api.endpoints)
|
|
113
|
-
- `POST /api/v2/webhooks` - Not documented
|
|
126
|
+
### Removed (in docs, not in source)
|
|
127
|
+
- `legacyAuth()` - Not found in any source file
|
|
114
128
|
|
|
115
129
|
### Up to Date ✓
|
|
116
|
-
- `docs/guides/authentication.mdx`
|
|
117
|
-
|
|
130
|
+
- `docs/guides/authentication.mdx` matches `src/lib/auth/`
|
|
131
|
+
|
|
132
|
+
### Unable to Verify (source not found)
|
|
133
|
+
⚠️ `docs/legacy/old-api.mdx` - No matching source file
|
|
134
|
+
|
|
135
|
+
═══════════════════════════════════════════════════════════
|
|
136
|
+
FEATURE FLAGS DETECTED
|
|
137
|
+
═══════════════════════════════════════════════════════════
|
|
138
|
+
|
|
139
|
+
⚠️ src/lib/auth/index.ts:45 - newAuthFlow
|
|
140
|
+
Current docs: OLD implementation
|
|
141
|
+
Feature flag: NEW implementation available
|
|
142
|
+
|
|
143
|
+
Question: Update docs to which version?
|
|
144
|
+
1. Keep current (old)
|
|
145
|
+
2. Update to new (feature-flagged)
|
|
146
|
+
3. Document both with toggle notice
|
|
147
|
+
|
|
148
|
+
═══════════════════════════════════════════════════════════
|
|
149
|
+
DUPLICATE FEATURES
|
|
150
|
+
═══════════════════════════════════════════════════════════
|
|
151
|
+
|
|
152
|
+
🔄 Similar functions found:
|
|
153
|
+
- src/lib/auth/login.ts → login()
|
|
154
|
+
- src/lib/auth/v2/authenticate.ts → authenticate()
|
|
155
|
+
|
|
156
|
+
Question: How to handle?
|
|
157
|
+
1. Document primary only
|
|
158
|
+
2. Document all with comparison
|
|
159
|
+
3. Mark duplicates as deprecated
|
|
118
160
|
```
|
|
119
161
|
|
|
120
162
|
Ask: "How would you like to proceed?
|
|
121
|
-
1. **Fix all** - Update everything
|
|
122
|
-
2. **Interactive** - Review each change
|
|
163
|
+
1. **Fix all** - Update everything (choose defaults for flags/duplicates)
|
|
164
|
+
2. **Interactive** - Review each change with me
|
|
123
165
|
3. **Specific items** - Tell me which to fix
|
|
124
|
-
4. **
|
|
166
|
+
4. **Re-search** - Search for different file patterns"
|
|
167
|
+
|
|
168
|
+
### Step 5: Review Each Change with User (MANDATORY)
|
|
169
|
+
|
|
170
|
+
**For EACH file being updated, show before/after:**
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
═══════════════════════════════════════════════════════════
|
|
174
|
+
CHANGE REVIEW: docs/api/users.mdx
|
|
175
|
+
═══════════════════════════════════════════════════════════
|
|
176
|
+
|
|
177
|
+
📄 BEFORE (current):
|
|
178
|
+
───────────────────────────────────────────────────────────
|
|
179
|
+
## createUser(name, email)
|
|
125
180
|
|
|
126
|
-
|
|
181
|
+
Creates a new user account.
|
|
127
182
|
|
|
128
|
-
|
|
183
|
+
| Parameter | Type |
|
|
184
|
+
|-----------|------|
|
|
185
|
+
| name | string |
|
|
186
|
+
| email | string |
|
|
187
|
+
───────────────────────────────────────────────────────────
|
|
129
188
|
|
|
130
|
-
|
|
189
|
+
📄 AFTER (proposed):
|
|
190
|
+
───────────────────────────────────────────────────────────
|
|
191
|
+
## createUser(options)
|
|
131
192
|
|
|
132
|
-
|
|
133
|
-
- Update `createUser` signature and examples
|
|
134
|
-
- Add new `options` parameter documentation
|
|
193
|
+
Creates a new user account.
|
|
135
194
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
195
|
+
| Parameter | Type | Description |
|
|
196
|
+
|-----------|------|-------------|
|
|
197
|
+
| options | CreateUserInput | User creation options |
|
|
139
198
|
|
|
140
|
-
|
|
141
|
-
- Add new page: `guides/webhooks.mdx`
|
|
199
|
+
### CreateUserInput
|
|
142
200
|
|
|
143
|
-
|
|
201
|
+
| Property | Type | Required |
|
|
202
|
+
|----------|------|----------|
|
|
203
|
+
| name | string | Yes |
|
|
204
|
+
| email | string | Yes |
|
|
205
|
+
| role | 'admin' \| 'user' | No |
|
|
206
|
+
───────────────────────────────────────────────────────────
|
|
144
207
|
|
|
145
|
-
|
|
208
|
+
⚠️ NOTICES:
|
|
209
|
+
- Source: src/lib/users.ts:23
|
|
210
|
+
- Feature flag: None
|
|
211
|
+
- Duplicates: None
|
|
146
212
|
|
|
147
|
-
|
|
213
|
+
OPTIONS:
|
|
214
|
+
1. ✅ **Approve** - Apply this change
|
|
215
|
+
2. ✏️ **Edit** - Modify the proposed content
|
|
216
|
+
3. ⏭️ **Skip** - Don't update this file
|
|
217
|
+
4. ❌ **Cancel all** - Stop updating
|
|
218
|
+
|
|
219
|
+
Choose an option:
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### Step 6: Apply Updates (After Approval)
|
|
223
|
+
|
|
224
|
+
**Only after user approves each change:**
|
|
148
225
|
|
|
149
226
|
1. **Preserve prose** - Keep explanations, update technical details
|
|
150
227
|
2. **Update code examples** - Match current signatures
|
|
@@ -156,7 +233,13 @@ When updating:
|
|
|
156
233
|
See [migration guide](/guides/v2-migration).
|
|
157
234
|
</Warning>
|
|
158
235
|
```
|
|
159
|
-
5. **
|
|
236
|
+
5. **Add feature flag notices** where applicable:
|
|
237
|
+
```mdx
|
|
238
|
+
<Note>
|
|
239
|
+
**Feature Flag**: This feature requires `newAuthFlow` to be enabled.
|
|
240
|
+
</Note>
|
|
241
|
+
```
|
|
242
|
+
6. **Create stubs** for new features:
|
|
160
243
|
```mdx
|
|
161
244
|
{/* TODO: Document this new feature */}
|
|
162
245
|
## New Feature
|
|
@@ -234,11 +317,27 @@ Documentation coming soon.
|
|
|
234
317
|
|
|
235
318
|
---
|
|
236
319
|
|
|
320
|
+
## Key Principles
|
|
321
|
+
|
|
322
|
+
| Principle | Description |
|
|
323
|
+
|-----------|-------------|
|
|
324
|
+
| **Search before update** | ALWAYS read source files before changing docs |
|
|
325
|
+
| **No hallucination** | Only update based on actual file contents |
|
|
326
|
+
| **Review before write** | ALWAYS show before/after for user approval |
|
|
327
|
+
| **Flag feature flags** | Detect and highlight conditional features |
|
|
328
|
+
| **Flag duplicates** | Identify similar/related features |
|
|
329
|
+
| **Verify changes** | Read source to confirm what changed |
|
|
330
|
+
|
|
237
331
|
## Quality Guidelines
|
|
238
332
|
|
|
333
|
+
- **SEARCH FIRST** - Read source files before making any update
|
|
334
|
+
- **REVIEW WITH USER** - Show before/after for each change
|
|
335
|
+
- **DETECT FEATURE FLAGS** - Search for conditional features
|
|
336
|
+
- **DETECT DUPLICATES** - Find similar functions/features
|
|
239
337
|
- Always show changes before applying
|
|
240
338
|
- Preserve existing prose and explanations
|
|
241
339
|
- Update only technical details (code, versions, signatures)
|
|
340
|
+
- Flag when source file not found - offer auto-correct options
|
|
242
341
|
- Add TODO markers for human review
|
|
243
342
|
- Apply terminology from context.json
|
|
244
343
|
- Create stubs rather than skip new features
|
|
@@ -63,16 +63,41 @@ What is the primary goal?
|
|
|
63
63
|
5. **Inform stakeholders** - Architecture/decisions
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
#### Question 2:
|
|
66
|
+
#### Question 2: Audience & Roles
|
|
67
67
|
```
|
|
68
|
-
|
|
68
|
+
Does your product have multiple user roles?
|
|
69
69
|
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
A) **Single audience** - All users have same access
|
|
71
|
+
B) **Multiple roles** - Different users see different features
|
|
72
|
+
(e.g., Admin/Editor/Viewer, different permission levels)
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**If Single (A):**
|
|
76
|
+
```
|
|
77
|
+
1. **Internal Developer** → Code flow, architecture
|
|
78
|
+
2. **External Developer** → Quick start, auth, examples
|
|
72
79
|
3. **Product User** → Tutorials, feature guides
|
|
73
80
|
4. **Content Author** → MDX syntax, structure
|
|
74
81
|
```
|
|
75
82
|
|
|
83
|
+
**If Multi-role (B):**
|
|
84
|
+
```
|
|
85
|
+
Define your roles:
|
|
86
|
+
┌─────────────────┬────────────────────────────┐
|
|
87
|
+
│ Role │ Features/Permissions │
|
|
88
|
+
├─────────────────┼────────────────────────────┤
|
|
89
|
+
│ Admin │ All features, user mgmt │
|
|
90
|
+
│ Editor │ Create/edit content │
|
|
91
|
+
│ Viewer │ Read-only access │
|
|
92
|
+
│ Developer │ API access, webhooks │
|
|
93
|
+
└─────────────────┴────────────────────────────┘
|
|
94
|
+
|
|
95
|
+
How to organize role-specific content?
|
|
96
|
+
1. **Separate sections** - admin/, users/, developers/
|
|
97
|
+
2. **Inline badges** - <RoleBadge roles={["admin"]}>
|
|
98
|
+
3. **Hybrid** - Both approaches
|
|
99
|
+
```
|
|
100
|
+
|
|
76
101
|
#### Question 3: Documentation Domain
|
|
77
102
|
```
|
|
78
103
|
1. **API Docs** - Voice: Professional, code-focused
|
|
@@ -241,31 +266,129 @@ Create `.devdoc/context.json`:
|
|
|
241
266
|
}
|
|
242
267
|
```
|
|
243
268
|
|
|
244
|
-
### Step 7: Generate
|
|
269
|
+
### Step 7: Generate WITH File Search (CRITICAL)
|
|
245
270
|
|
|
246
271
|
**Only after user approval in Step 5.**
|
|
247
272
|
|
|
273
|
+
**For EACH page in the content plan:**
|
|
274
|
+
|
|
275
|
+
```
|
|
276
|
+
1. SEARCH for relevant files
|
|
277
|
+
git ls-files | grep -iE "(auth|login|token)"
|
|
278
|
+
rg -l "authentication" --type ts
|
|
279
|
+
|
|
280
|
+
2. READ the files found
|
|
281
|
+
- Extract real signatures, types, examples
|
|
282
|
+
- Note the source files
|
|
283
|
+
|
|
284
|
+
3. DETECT feature flags & duplicates
|
|
285
|
+
rg -l "featureFlag|isEnabled|FF_" --type ts
|
|
286
|
+
rg "export.*(login|authenticate)" --type ts -l
|
|
287
|
+
|
|
288
|
+
⚠️ FEATURE FLAG: newAuthFlow
|
|
289
|
+
OLD vs NEW implementation
|
|
290
|
+
→ Ask user which to document
|
|
291
|
+
|
|
292
|
+
🔄 DUPLICATE: authenticate() in v2/
|
|
293
|
+
→ Ask user how to handle
|
|
294
|
+
|
|
295
|
+
4. ASSESS if enough info exists
|
|
296
|
+
✅ Sufficient → Draft content
|
|
297
|
+
⚠️ Partial → Draft with TODOs
|
|
298
|
+
❌ Insufficient → Flag and offer options
|
|
299
|
+
|
|
300
|
+
5. REVIEW DRAFT with user (MANDATORY)
|
|
301
|
+
═══════════════════════════════════
|
|
302
|
+
CONTENT REVIEW: authentication.mdx
|
|
303
|
+
═══════════════════════════════════
|
|
304
|
+
|
|
305
|
+
[Show full draft content]
|
|
306
|
+
|
|
307
|
+
NOTICES:
|
|
308
|
+
⚠️ Feature flag: newAuthFlow
|
|
309
|
+
🔄 Duplicate: authenticate() in v2/
|
|
310
|
+
|
|
311
|
+
OPTIONS:
|
|
312
|
+
1. ✅ Approve - Create file
|
|
313
|
+
2. ✏️ Edit - Make changes
|
|
314
|
+
3. 🔄 Switch version - Use flagged version
|
|
315
|
+
4. ➕ Add duplicate - Include related
|
|
316
|
+
5. ⏭️ Skip - Don't create
|
|
317
|
+
|
|
318
|
+
6. WRITE only after user approves
|
|
319
|
+
```
|
|
320
|
+
|
|
248
321
|
**Expert Writing Standards:**
|
|
249
|
-
1. **
|
|
250
|
-
2. **
|
|
251
|
-
3. **
|
|
252
|
-
4. **
|
|
253
|
-
5. **
|
|
322
|
+
1. **Search before write** - ALWAYS find source files first
|
|
323
|
+
2. **No hallucination** - Only real data from files
|
|
324
|
+
3. **Review with user** - Show draft before creating
|
|
325
|
+
4. **Flag feature flags** - Ask which version
|
|
326
|
+
5. **Flag duplicates** - Let user choose
|
|
327
|
+
6. **Second Person** - "You can configure..."
|
|
328
|
+
7. **Include REAL Examples** - From tests/examples
|
|
329
|
+
8. **Use Mermaid Diagrams** - For architecture, flows, sequences
|
|
330
|
+
|
|
331
|
+
**Mermaid Diagram Requirements:**
|
|
332
|
+
| Content | Diagram Type |
|
|
333
|
+
|---------|--------------|
|
|
334
|
+
| Architecture | `flowchart TB` |
|
|
335
|
+
| Data flow | `flowchart LR` |
|
|
336
|
+
| API calls | `sequenceDiagram` |
|
|
337
|
+
| State machine | `stateDiagram-v2` |
|
|
338
|
+
| Data models | `erDiagram` |
|
|
339
|
+
|
|
340
|
+
Example:
|
|
341
|
+
```mermaid
|
|
342
|
+
sequenceDiagram
|
|
343
|
+
User->>API: Request
|
|
344
|
+
API->>Service: Process
|
|
345
|
+
Service-->>API: Response
|
|
346
|
+
API-->>User: Result
|
|
347
|
+
```
|
|
254
348
|
|
|
255
|
-
### Step 8:
|
|
349
|
+
### Step 8: Create docs.json and theme.json
|
|
350
|
+
|
|
351
|
+
**CRITICAL: Read schema files before creating config files.**
|
|
352
|
+
|
|
353
|
+
```
|
|
354
|
+
📋 SCHEMA REFERENCES (Read before writing)
|
|
355
|
+
|
|
356
|
+
1. schemas/docs.schema.json → docs.json structure
|
|
357
|
+
2. schemas/theme.schema.json → theme.json structure
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**Review config with user before writing:**
|
|
361
|
+
|
|
362
|
+
```
|
|
363
|
+
═══════════════════════════════════════════════════
|
|
364
|
+
CONFIG REVIEW: docs.json
|
|
365
|
+
═══════════════════════════════════════════════════
|
|
256
366
|
|
|
257
|
-
```json
|
|
258
367
|
{
|
|
259
|
-
"
|
|
368
|
+
"$schema": "https://devdoc.sh/docs.json",
|
|
369
|
+
"name": "[Product Name]",
|
|
370
|
+
"docType": "[api|product|internal]",
|
|
260
371
|
"navigation": {
|
|
261
372
|
"tabs": [
|
|
262
|
-
{ "tab": "Guides", "groups": [...] },
|
|
263
|
-
{ "tab": "API Reference", "type": "openapi"
|
|
373
|
+
{ "tab": "Guides", "type": "docs", "groups": [...] },
|
|
374
|
+
{ "tab": "API Reference", "type": "openapi" }
|
|
264
375
|
]
|
|
265
376
|
}
|
|
266
377
|
}
|
|
378
|
+
|
|
379
|
+
Validated against: schemas/docs.schema.json ✓
|
|
380
|
+
|
|
381
|
+
OPTIONS:
|
|
382
|
+
1. ✅ Approve
|
|
383
|
+
2. ✏️ Edit
|
|
384
|
+
3. ❌ Cancel
|
|
267
385
|
```
|
|
268
386
|
|
|
387
|
+
**Quick Reference:**
|
|
388
|
+
- Tab types: `docs`, `openapi`, `graphql`, `changelog`
|
|
389
|
+
- Icons: `rocket-launch`, `book-open`, `code`, `gear`, `terminal`, `star`
|
|
390
|
+
- Colors: indigo (#6366f1), blue (#3b82f6), green (#10b981)
|
|
391
|
+
|
|
269
392
|
### Step 9: Summary
|
|
270
393
|
|
|
271
394
|
```
|
|
@@ -299,8 +422,15 @@ Next: `devdoc dev` to preview
|
|
|
299
422
|
| **Project overview first** | Quick git scan to understand structure |
|
|
300
423
|
| **Strategy first** | Goals and audience before structure |
|
|
301
424
|
| **Audience-driven** | Match content to user needs |
|
|
425
|
+
| **Support multi-role** | Handle products with multiple user roles |
|
|
302
426
|
| **Diátaxis types** | Classify every page |
|
|
303
427
|
| **IA approval required** | User confirms before generating |
|
|
428
|
+
| **Search before generate** | ALWAYS search/read files before each page |
|
|
429
|
+
| **No hallucination** | Only use real data from source files |
|
|
430
|
+
| **Review before write** | ALWAYS show draft for user approval |
|
|
431
|
+
| **Flag feature flags** | Detect conditional features, ask which version |
|
|
432
|
+
| **Flag duplicates** | Find similar features, let user choose |
|
|
433
|
+
| **Flag unclear sections** | Offer auto-correct IA if info not found |
|
|
304
434
|
| **Expert writing** | 2nd person, active voice |
|
|
305
435
|
| **Mark unknowns** | Add TODO for review |
|
|
306
436
|
|