@knowcode/doc-builder 1.9.30 → 1.10.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 (198) hide show
  1. package/lib/core-builder.js +164 -174
  2. package/lib/emoji-mapper.js +27 -12
  3. package/package.json +12 -2
  4. package/.claude/settings.local.json +0 -56
  5. package/CACHE-BUSTING-GUIDE.md +0 -82
  6. package/CLAUDE.md +0 -86
  7. package/CONTRIBUTING.md +0 -148
  8. package/GITHUB_SETUP.md +0 -203
  9. package/RELEASE-NOTES-1.7.5.md +0 -64
  10. package/Screenshot 2025-07-22 at 19.51.21.png +0 -0
  11. package/Screenshot 2025-07-26 at 17.06.49.png +0 -0
  12. package/add-user-clive.sql +0 -35
  13. package/add-user-lindsay-fixed.sql +0 -85
  14. package/add-user-lindsay.sql +0 -68
  15. package/add-user-pmorgan.sql +0 -35
  16. package/add-user-robbie.sql +0 -35
  17. package/add-wru-users.sql +0 -105
  18. package/debug-login.sql +0 -30
  19. package/doc-builder.config.js +0 -126
  20. package/doc-builder.config.js.backup.1753793768283 +0 -47
  21. package/doc-builder.config.js.backup.1753803964423 +0 -114
  22. package/doc-builder.config.js.backup.1753945707032 +0 -115
  23. package/doc-builder.config.js.backup.1754059241330 +0 -115
  24. package/doc-builder.config.js.backup.1754119567787 +0 -123
  25. package/doc-builder.config.js.backup.1754120048862 +0 -124
  26. package/doc-builder.config.js.backup.1754120529913 +0 -124
  27. package/doc-builder.config.js.backup.1754218469785 +0 -124
  28. package/doc-builder.config.js.backup.1754384764054 +0 -124
  29. package/doc-builder.config.js.backup.1754567425847 +0 -124
  30. package/doc-builder.config.js.backup.1754568137859 +0 -126
  31. package/doc-builder.config.js.backup.1754569388252 +0 -126
  32. package/doc-builder.config.js.backup.1754576694123 +0 -126
  33. package/doc-builder.config.js.backup.1755031374829 +0 -126
  34. package/doc-builder.config.js.backup.1755034500990 +0 -126
  35. package/doc-builder.config.js.backup.1755034809236 +0 -126
  36. package/grant-access.sql +0 -15
  37. package/html/11.png +0 -0
  38. package/html/404.html +0 -115
  39. package/html/README.html +0 -522
  40. package/html/Screenshot 2025-08-12 at 21.35.07.png +0 -0
  41. package/html/about-doc-builder.html +0 -491
  42. package/html/auth.js +0 -157
  43. package/html/claude-workflow-guide.html +0 -525
  44. package/html/css/notion-style.css +0 -2502
  45. package/html/documentation-index.html +0 -471
  46. package/html/guides/authentication-default-change.html +0 -370
  47. package/html/guides/authentication-guide.html +0 -509
  48. package/html/guides/cache-control-anti-pattern.html +0 -361
  49. package/html/guides/claude-workflow-guide.html +0 -1074
  50. package/html/guides/configuration-guide.html +0 -472
  51. package/html/guides/document-standards.html +0 -518
  52. package/html/guides/documentation-standards.html +0 -694
  53. package/html/guides/html-embedding-guide.html +0 -461
  54. package/html/guides/image-modal-guide.html +0 -515
  55. package/html/guides/next-steps-walkthrough.html +0 -638
  56. package/html/guides/phosphor-icons-guide.html +0 -584
  57. package/html/guides/private-directory-authentication-troubleshooting.html +0 -555
  58. package/html/guides/private-directory-authentication.html +0 -541
  59. package/html/guides/public-site-deployment.html +0 -431
  60. package/html/guides/search-engine-verification-guide.html +0 -542
  61. package/html/guides/seo-guide.html +0 -661
  62. package/html/guides/seo-optimization-guide.html +0 -887
  63. package/html/guides/supabase-auth-implementation-plan.html +0 -543
  64. package/html/guides/supabase-auth-integration-plan.html +0 -671
  65. package/html/guides/supabase-auth-setup-guide.html +0 -498
  66. package/html/guides/supabase-authentication-complete-guide.html +0 -866
  67. package/html/guides/troubleshooting-guide.html +0 -633
  68. package/html/guides/vercel-deployment-auth-setup.html +0 -337
  69. package/html/guides/windows-setup-guide.html +0 -859
  70. package/html/image-modal-test.html +0 -318
  71. package/html/index.html +0 -522
  72. package/html/js/auth.js +0 -157
  73. package/html/js/main.js +0 -1754
  74. package/html/launch/README.html +0 -297
  75. package/html/launch/bubble-plugin-specification.html +0 -933
  76. package/html/launch/go-to-market-strategy.html +0 -663
  77. package/html/launch/launch-announcements.html +0 -593
  78. package/html/login.html +0 -102
  79. package/html/logout.html +0 -18
  80. package/html/private/cache-control-anti-pattern.html +0 -429
  81. package/html/private/launch/README.html +0 -371
  82. package/html/private/launch/auth-cleanup-summary.html +0 -361
  83. package/html/private/launch/bubble-plugin-specification.html +0 -1007
  84. package/html/private/launch/go-to-market-strategy.html +0 -737
  85. package/html/private/launch/launch-announcements.html +0 -667
  86. package/html/private/launch/vercel-deployment-auth-setup.html +0 -417
  87. package/html/private/next-steps-walkthrough.html +0 -679
  88. package/html/private/supabase-auth-implementation-completed.html +0 -454
  89. package/html/private/supabase-auth-implementation-plan.html +0 -594
  90. package/html/private/supabase-auth-integration-plan.html +0 -704
  91. package/html/private/supabase-auth-setup-guide.html +0 -555
  92. package/html/private/test-private-doc.html +0 -302
  93. package/html/private/user-management-tooling.html +0 -601
  94. package/html/prompts/Screenshot 2025-08-02 at 08.49.55.png +0 -0
  95. package/html/prompts/beautiful-documentation-design.html +0 -784
  96. package/html/prompts/markdown-document-standards.html +0 -422
  97. package/html/prompts/project-rename-strategy-sasha-publish.html +0 -530
  98. package/html/robots.txt +0 -9
  99. package/html/sitemap.xml +0 -357
  100. package/html/test-questions/how-does-it-work%3F.html +0 -294
  101. package/html/test-questions/step-1%3A%20getting-started.html +0 -289
  102. package/html/test-questions/what-is-the-purpose.html +0 -293
  103. package/html/test-status.html +0 -281
  104. package/html/vercel-cli-setup-guide.html +0 -495
  105. package/html/vercel-first-time-setup-guide.html +0 -454
  106. package/html/vercel.json +0 -29
  107. package/html-static/11.png +0 -0
  108. package/html-static/404.html +0 -115
  109. package/html-static/README.html +0 -609
  110. package/html-static/Screenshot 2025-08-12 at 21.35.07.png +0 -0
  111. package/html-static/about-doc-builder.html +0 -578
  112. package/html-static/css/notion-style.css +0 -2502
  113. package/html-static/documentation-index.html +0 -558
  114. package/html-static/guides/authentication-default-change.html +0 -457
  115. package/html-static/guides/authentication-guide.html +0 -596
  116. package/html-static/guides/claude-workflow-guide.html +0 -1161
  117. package/html-static/guides/configuration-guide.html +0 -559
  118. package/html-static/guides/documentation-standards.html +0 -781
  119. package/html-static/guides/html-embedding-guide.html +0 -548
  120. package/html-static/guides/image-modal-guide.html +0 -602
  121. package/html-static/guides/phosphor-icons-guide.html +0 -671
  122. package/html-static/guides/private-directory-authentication-troubleshooting.html +0 -642
  123. package/html-static/guides/private-directory-authentication.html +0 -628
  124. package/html-static/guides/public-site-deployment.html +0 -518
  125. package/html-static/guides/search-engine-verification-guide.html +0 -629
  126. package/html-static/guides/seo-guide.html +0 -748
  127. package/html-static/guides/seo-optimization-guide.html +0 -974
  128. package/html-static/guides/supabase-authentication-complete-guide.html +0 -953
  129. package/html-static/guides/troubleshooting-guide.html +0 -720
  130. package/html-static/guides/windows-setup-guide.html +0 -946
  131. package/html-static/image-modal-test.html +0 -405
  132. package/html-static/index.html +0 -609
  133. package/html-static/js/main.js +0 -1754
  134. package/html-static/prompts/Screenshot 2025-08-02 at 08.49.55.png +0 -0
  135. package/html-static/prompts/beautiful-documentation-design.html +0 -871
  136. package/html-static/prompts/markdown-document-standards.html +0 -509
  137. package/html-static/prompts/project-rename-strategy-sasha-publish.html +0 -617
  138. package/html-static/robots.txt +0 -5
  139. package/html-static/sitemap.xml +0 -195
  140. package/html-static/test-questions/how-does-it-work%3F.html +0 -381
  141. package/html-static/test-questions/step-1%3A%20getting-started.html +0 -376
  142. package/html-static/test-questions/what-is-the-purpose.html +0 -380
  143. package/html-static/vercel-cli-setup-guide.html +0 -582
  144. package/html-static/vercel-first-time-setup-guide.html +0 -541
  145. package/manage-users.sql +0 -191
  146. package/migrate-to-domain-auth.sql +0 -47
  147. package/package/CACHE-BUSTING-GUIDE.md +0 -82
  148. package/package/CHANGELOG.md +0 -902
  149. package/package/README.md +0 -248
  150. package/package/assets/css/notion-style.css +0 -2211
  151. package/package/assets/js/auth.js +0 -67
  152. package/package/assets/js/main.js +0 -1565
  153. package/package/cli.js +0 -764
  154. package/package/index.js +0 -38
  155. package/package/knowcode-doc-builder-1.3.15.tgz +0 -0
  156. package/package/lib/builder.js +0 -32
  157. package/package/lib/config.js +0 -278
  158. package/package/lib/core-builder.js +0 -957
  159. package/package/lib/deploy.js +0 -497
  160. package/package/lib/dev-server.js +0 -96
  161. package/package/package.json +0 -34
  162. package/package/scripts/npx-runner.js +0 -27
  163. package/package/scripts/setup.js +0 -56
  164. package/package/test-cache-bust.sh +0 -43
  165. package/public-config.js +0 -22
  166. package/public-html/404.html +0 -115
  167. package/public-html/README.html +0 -149
  168. package/public-html/css/notion-style.css +0 -2036
  169. package/public-html/index.html +0 -149
  170. package/public-html/js/auth.js +0 -67
  171. package/public-html/js/main.js +0 -1485
  172. package/quick-test-commands.md +0 -40
  173. package/recordings/Screenshot 2025-07-24 at 18.22.01.png +0 -0
  174. package/recordings/mh-ls-22jul.txt +0 -2305
  175. package/screenshot.png +0 -0
  176. package/scripts/Screenshot 2025-07-23 at 15.39.41.png +0 -0
  177. package/setup-database-v2.sql +0 -53
  178. package/setup-database.sql +0 -41
  179. package/test-auth-config.js +0 -17
  180. package/test-cache-bust.sh +0 -43
  181. package/test-docs/README.md +0 -39
  182. package/test-html/404.html +0 -115
  183. package/test-html/README.html +0 -172
  184. package/test-html/auth.js +0 -97
  185. package/test-html/css/notion-style.css +0 -2036
  186. package/test-html/index.html +0 -172
  187. package/test-html/js/auth.js +0 -97
  188. package/test-html/js/main.js +0 -1485
  189. package/test-html/login.html +0 -102
  190. package/test-html/logout.html +0 -18
  191. package/update-domain.sql +0 -9
  192. package/user-access-view.sql +0 -49
  193. package/user-management/README.md +0 -301
  194. package/user-management/add-users.sh +0 -776
  195. package/user-management/create-user.js +0 -65
  196. package/user-management/users.txt +0 -15
  197. package/view-all-users.sql +0 -40
  198. package/wru-auth-config.js +0 -17
@@ -1,1007 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <meta name="description" content="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers to...">
7
- <title>Bubble.io Plugin Specification | @knowcode/doc-builder</title>
8
-
9
- <meta name="generator" content="@knowcode/doc-builder by Knowcode Ltd">
10
- <meta name="author" content="Lindsay Smith">
11
- <meta name="keywords" content="documentation, markdown, static site generator, vercel, notion-style, text, bubble">
12
- <meta name="robots" content="index, follow">
13
- <link rel="canonical" href="https://doc-builder-delta.vercel.app/private/launch/bubble-plugin-specification.html">
14
-
15
- <!-- Open Graph / Facebook -->
16
- <meta property="og:type" content="article">
17
- <meta property="og:url" content="https://doc-builder-delta.vercel.app/private/launch/bubble-plugin-specification.html">
18
- <meta property="og:title" content="Bubble.io Plugin Specification | @knowcode/doc-builder">
19
- <meta property="og:description" content="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers to...">
20
- <meta property="og:image" content="https://doc-builder-delta.vercel.app/og-default.png">
21
- <meta property="og:site_name" content="@knowcode/doc-builder">
22
- <meta property="og:locale" content="en_US">
23
-
24
- <!-- Twitter Card -->
25
- <meta name="twitter:card" content="summary_large_image">
26
- <meta name="twitter:site" content="@planbbackups">
27
- <meta name="twitter:creator" content="@planbbackups">
28
- <meta name="twitter:title" content="Bubble.io Plugin Specification | @knowcode/doc-builder">
29
- <meta name="twitter:description" content="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers to...">
30
- <meta name="twitter:image" content="https://doc-builder-delta.vercel.app/og-default.png">
31
-
32
- <!-- Custom Meta Tags -->
33
- <meta name="google-site-verification" content="FtzcDTf5BQ9K5EfnGazQkgU2U4FiN3ITzM7gHwqUAqQ">
34
- <meta name="msvalidate.01" content="B2D8C4C12C530D47AA962B24CAA09630">
35
-
36
- <!-- Fonts -->
37
- <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
38
-
39
- <!-- Icons -->
40
- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
41
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@phosphor-icons/web@2.1.1/src/regular/style.css">
42
-
43
- <!-- Mermaid -->
44
- <script src="https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.min.js"></script>
45
-
46
- <!-- Styles -->
47
- <link rel="stylesheet" href="/css/notion-style.css">
48
-
49
-
50
-
51
-
52
- <!-- Hide content until auth check -->
53
- <style>
54
- body {
55
- visibility: hidden;
56
- opacity: 0;
57
- transition: opacity 0.3s ease;
58
- }
59
- body.authenticated {
60
- visibility: visible;
61
- opacity: 1;
62
- }
63
- /* Show login/logout pages immediately */
64
- body.auth-page {
65
- visibility: visible;
66
- opacity: 1;
67
- }
68
- /* Style auth button consistently */
69
- .auth-btn {
70
- background: none;
71
- border: none;
72
- color: var(--text-secondary);
73
- cursor: pointer;
74
- padding: 0.5rem;
75
- border-radius: 0.5rem;
76
- transition: all 0.2s;
77
- font-size: 1.1rem;
78
- }
79
- .auth-btn:hover {
80
- background: var(--bg-secondary);
81
- color: var(--text-primary);
82
- }
83
- </style>
84
-
85
-
86
- <!-- Favicon -->
87
- <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22>✨</text></svg>">
88
-
89
- <script type="application/ld+json">
90
- {
91
- "@context": "https://schema.org",
92
- "@type": "TechArticle",
93
- "headline": "Bubble.io Plugin Specification",
94
- "description": "This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers to...",
95
- "author": {
96
- "@type": "Person",
97
- "name": "Lindsay Smith"
98
- },
99
- "publisher": {
100
- "@type": "Organization",
101
- "name": "Knowcode Ltd",
102
- "url": "https://knowcode.tech"
103
- },
104
- "datePublished": "2025-08-12T21:40:09.415Z",
105
- "dateModified": "2025-08-12T21:40:09.415Z",
106
- "mainEntityOfPage": {
107
- "@type": "WebPage",
108
- "@id": "https://doc-builder-delta.vercel.app/private/launch/bubble-plugin-specification.html"
109
- },
110
- "breadcrumb": {
111
- "@type": "BreadcrumbList",
112
- "itemListElement": [
113
- {
114
- "@type": "ListItem",
115
- "position": 1,
116
- "name": "@knowcode/doc-builder",
117
- "item": "https://doc-builder-delta.vercel.app"
118
- },
119
- {
120
- "@type": "ListItem",
121
- "position": 2,
122
- "name": "Private",
123
- "item": "https://doc-builder-delta.vercel.app/private/"
124
- },
125
- {
126
- "@type": "ListItem",
127
- "position": 3,
128
- "name": "Launch",
129
- "item": "https://doc-builder-delta.vercel.app/private/launch/"
130
- },
131
- {
132
- "@type": "ListItem",
133
- "position": 4,
134
- "name": "Bubble Plugin Specification",
135
- "item": "https://doc-builder-delta.vercel.app/private/launch/bubble-plugin-specification.html"
136
- }
137
- ]
138
- }
139
- }
140
- </script>
141
- </head>
142
- <body>
143
-
144
- <!-- Header -->
145
- <header class="header">
146
- <div class="header-content">
147
- <a href="/index.html" class="logo">@knowcode/doc-builder</a>
148
-
149
- <div class="header-actions">
150
- <div class="deployment-info">
151
- <span class="deployment-date" title="Built with doc-builder v1.9.29">Last updated: Aug 12, 2025, 09:40 PM UTC</span>
152
- </div>
153
-
154
-
155
- <a href="../../../login.html" class="auth-btn" title="Login/Logout">
156
- <i class="fas fa-sign-in-alt"></i>
157
- </a>
158
-
159
-
160
- <button id="theme-toggle" class="theme-toggle" aria-label="Toggle theme">
161
- <i class="fas fa-moon"></i>
162
- </button>
163
-
164
- <button id="menu-toggle" class="menu-toggle" aria-label="Toggle menu">
165
- <i class="fas fa-bars"></i>
166
- </button>
167
- </div>
168
- </div>
169
- </header>
170
-
171
-
172
-
173
-
174
- <!-- Breadcrumbs -->
175
- <nav class="breadcrumbs " id="breadcrumbs" >
176
- <!-- Breadcrumbs will be generated by JavaScript -->
177
- </nav>
178
-
179
- <!-- Main Content -->
180
- <div class="main-wrapper">
181
- <!-- Sidebar -->
182
- <aside class="sidebar">
183
- <div class="sidebar-header">
184
- <div class="filter-box">
185
- <input type="text" placeholder="Search menu..." class="filter-input" id="nav-filter">
186
- <i class="fas fa-search filter-icon"></i>
187
- </div>
188
- </div>
189
- <nav class="navigation">
190
-
191
- <div class="nav-section" data-level="0">
192
- <a class="nav-title toggle-all-nav expanded" href="#" id="nav-toggle-all" title="Collapse/Expand All">
193
- <i class="ph ph-caret-down" id="toggle-all-icon"></i> Documentation
194
- </a>
195
- <div class="nav-content">
196
- <a href="/README.html" class="nav-item" data-tooltip="@knowcode/doc-builder."><i class="ph ph-file-text"></i> Overview</a>
197
- <a href="/about-doc-builder.html" class="nav-item" data-tooltip="About @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #059669;"></i> About Doc Builder</a>
198
- <a href="/documentation-index.html" class="nav-item" data-tooltip="This directory contains additional documentation for the @knowcode/doc-builder project, organized by topic and purpose."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Documentation Index</a>
199
- <a href="/image-modal-test.html" class="nav-item" data-tooltip="This document tests the new image modal functionality in doc-builder."><i class="ph ph-file-text"></i> Image Modal Test</a>
200
- <a href="/vercel-cli-setup-guide.html" class="nav-item" data-tooltip="This guide provides comprehensive instructions for installing the Vercel CLI across different operating systems."><i class="ph ph-check-circle" style="color: #059669;"></i> Vercel Cli Setup Guide</a>
201
- <a href="/vercel-first-time-setup-guide.html" class="nav-item" data-tooltip="This guide walks you through the Vercel deployment process when using ."><i class="ph ph-check-circle" style="color: #059669;"></i> Vercel First Time Setup Guide</a></div></div>
202
- <div class="nav-section" data-level="1">
203
- <a class="nav-title collapsible" href="#" data-target="nav-guides-1" >
204
- <i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-book"></i> Guides
205
- </a>
206
- <div class="nav-content collapsed" id="nav-guides-1">
207
- <a href="/guides/authentication-default-change.html" class="nav-item" data-tooltip="Starting from version 1.7.4, @knowcode/doc-builder now defaults to no authentication for all documentation sites."><i class="ph ph-file-text"></i> Authentication Default Change</a>
208
- <a href="/guides/authentication-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder supports enterprise-grade authentication through Supabase - a secure, scalable authentication platform."><i class="ph ph-check-circle" style="color: #059669;"></i> Authentication Guide</a>
209
- <a href="/guides/claude-workflow-guide.html" class="nav-item" data-tooltip="This guide demonstrates an efficient workflow for using Claude Code with a refined CLAUDE.md file to create high-quality documentation and deploy it..."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Claude Workflow Guide</a>
210
- <a href="/guides/configuration-guide.html" class="nav-item" data-tooltip="This guide explains how @knowcode/doc-builder handles configuration files and settings."><i class="ph ph-check-circle" style="color: #059669;"></i> Configuration Guide</a>
211
- <a href="/guides/documentation-standards.html" class="nav-item" data-tooltip="This document defines the documentation standards and conventions for the @knowcode/doc-builder project."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Documentation Standards</a>
212
- <a href="/guides/html-embedding-guide.html" class="nav-item" data-tooltip="Starting from version 1.9.2, doc-builder treats HTML files ( and ) as attachments that are automatically copied to your output directory during the..."><i class="ph ph-check-circle" style="color: #059669;"></i> Html Embedding Guide</a>
213
- <a href="/guides/image-modal-guide.html" class="nav-item" data-tooltip="When users click on any image in your generated documentation, it opens in a professional modal overlay with: Full-screen viewing experience Smooth..."><i class="ph ph-check-circle" style="color: #059669;"></i> Image Modal Guide</a>
214
- <a href="/guides/phosphor-icons-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder automatically converts Unicode emojis in your markdown files to beautiful Phosphor icons in the generated HTML."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Phosphor Icons Guide</a>
215
- <a href="/guides/private-directory-authentication.html" class="nav-item" data-tooltip="The @knowcode/doc-builder provides flexible authentication options to protect your documentation."><i class="ph ph-check-circle" style="color: #059669;"></i> Private Directory Authentication</a>
216
- <a href="/guides/private-directory-authentication-troubleshooting.html" class="nav-item" data-tooltip="Private Directory Authentication Troubleshooting."><i class="ph ph-check-circle" style="color: #059669;"></i> Private Directory Authentication Troubleshooting</a>
217
- <a href="/guides/public-site-deployment.html" class="nav-item" data-tooltip="The @knowcode/doc-builder now supports deploying public documentation sites without authentication."><i class="ph ph-check-circle" style="color: #059669;"></i> Public Site Deployment</a>
218
- <a href="/guides/search-engine-verification-guide.html" class="nav-item" data-tooltip="Search engine verification provides access to powerful webmaster tools:."><i class="ph ph-check-circle" style="color: #059669;"></i> Search Engine Verification Guide</a>
219
- <a href="/guides/seo-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes comprehensive SEO (Search Engine Optimization) features to help your documentation rank better in search results and..."><i class="ph ph-check-circle" style="color: #059669;"></i> Seo Guide</a>
220
- <a href="/guides/seo-optimization-guide.html" class="nav-item" data-tooltip="Comprehensive guide to optimizing documentation for search engines. Learn SEO best practices, use built-in features, and improve your rankings."><i class="ph ph-check-circle" style="color: #059669;"></i> SEO Optimization Guide for @knowcode/doc-builder</a>
221
- <a href="/guides/supabase-authentication-complete-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes built-in Supabase authentication that provides enterprise-grade security with zero configuration."><i class="ph ph-check-circle" style="color: #059669;"></i> Supabase Authentication Complete Guide</a>
222
- <a href="/guides/troubleshooting-guide.html" class="nav-item" data-tooltip="This guide helps you resolve common issues when using @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #059669;"></i> Troubleshooting Guide</a>
223
- <a href="/guides/windows-setup-guide.html" class="nav-item" data-tooltip="This guide helps Windows users set up the complete AI-powered documentation workflow using Claude Code, @knowcode/doc-builder, and Vercel."><i class="ph ph-check-circle" style="color: #059669;"></i> Windows Setup Guide</a></div></div>
224
- <div class="nav-section private-nav" data-level="1">
225
- <a class="nav-title collapsible expanded" href="#" data-target="nav-private-1" >
226
- <i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-lock"></i> Private
227
- </a>
228
- <div class="nav-content" id="nav-private-1">
229
- <a href="/private/cache-control-anti-pattern.html" class="nav-item" data-tooltip="Cache Control Anti-Pattern: Why Aggressive Cache-Busting is Bad for Documentation Sites."><i class="ph ph-check-circle" style="color: #059669;"></i> Cache Control Anti Pattern</a>
230
- <a href="/private/next-steps-walkthrough.html" class="nav-item" data-tooltip="Now that we&#039;ve implemented Supabase authentication, let&#039;s walk through testing the implementation and preparing for deployment."><i class="ph ph-check-circle" style="color: #059669;"></i> Next Steps Walkthrough</a>
231
- <a href="/private/supabase-auth-implementation-completed.html" class="nav-item" data-tooltip="This document records the successful implementation of Supabase authentication in @knowcode/doc-builder v1.7.5+."><i class="ph ph-check-circle" style="color: #059669;"></i> Supabase Auth Implementation Completed</a>
232
- <a href="/private/supabase-auth-implementation-plan.html" class="nav-item" data-tooltip="Supabase Auth Implementation Plan for @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #059669;"></i> Supabase Auth Implementation Plan</a>
233
- <a href="/private/supabase-auth-integration-plan.html" class="nav-item" data-tooltip="Supabase Authentication Integration Plan for @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #059669;"></i> Supabase Auth Integration Plan</a>
234
- <a href="/private/supabase-auth-setup-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder supports enterprise-grade authentication through Supabase."><i class="ph ph-check-circle" style="color: #059669;"></i> Supabase Auth Setup Guide</a>
235
- <a href="/private/test-private-doc.html" class="nav-item" data-tooltip="Test Private Document."><i class="ph ph-file-text"></i> Test Private Doc</a>
236
- <a href="/private/user-management-tooling.html" class="nav-item" data-tooltip="The user management system is a set of tools designed to manage user access to Supabase-authenticated documentation sites built with."><i class="ph ph-check-circle" style="color: #059669;"></i> User Management Tooling</a></div></div>
237
- <div class="nav-section private-nav" data-level="2">
238
- <a class="nav-title collapsible expanded" href="/private/launch/README.html" data-target="nav-private-launch-2" >
239
- <i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-rocket-launch"></i> Launch
240
- </a>
241
- <div class="nav-content" id="nav-private-launch-2">
242
- <a href="/private/launch/README.html" class="nav-item" data-tooltip="This directory contains all documentation related to the commercial launch of @knowcode/doc-builder, including go-to-market strategy, platform..."><i class="ph ph-check-circle" style="color: #059669;"></i> Launch Overview</a>
243
- <a href="/private/launch/auth-cleanup-summary.html" class="nav-item" data-tooltip="All references to the old client-side authentication system have been removed from @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #059669;"></i> Auth Cleanup Summary</a>
244
- <a href="/private/launch/bubble-plugin-specification.html" class="nav-item active" data-tooltip="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers..."><i class="ph ph-x-circle" style="color: #dc2626;"></i> Bubble Plugin Specification</a>
245
- <a href="/private/launch/go-to-market-strategy.html" class="nav-item" data-tooltip="Go-to-Market Strategy &amp; Product Launch Plan."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Go To Market Strategy</a>
246
- <a href="/private/launch/launch-announcements.html" class="nav-item" data-tooltip="This document contains ready-to-use announcement templates for launching @knowcode/doc-builder across various platforms and channels."><i class="ph ph-check-circle" style="color: #059669;"></i> Launch Announcements</a>
247
- <a href="/private/launch/vercel-deployment-auth-setup.html" class="nav-item" data-tooltip="Vercel Deployment Authentication Setup Guide."><i class="ph ph-check-circle" style="color: #059669;"></i> Vercel Deployment Auth Setup</a></div></div>
248
- <div class="nav-section" data-level="1">
249
- <a class="nav-title collapsible" href="#" data-target="nav-prompts-1" >
250
- <i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-chat-circle-dots"></i> Prompts
251
- </a>
252
- <div class="nav-content collapsed" id="nav-prompts-1">
253
- <a href="/prompts/beautiful-documentation-design.html" class="nav-item" data-tooltip="🎨 Beautiful Documentation Design Guide."><i class="ph ph-check-circle" style="color: #059669;"></i> Beautiful Documentation Design</a>
254
- <a href="/prompts/markdown-document-standards.html" class="nav-item" data-tooltip="Detailed introduction to the topic..."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Markdown Document Standards</a>
255
- <a href="/prompts/project-rename-strategy-sasha-publish.html" class="nav-item" data-tooltip="This document outlines the comprehensive strategy for renaming the @knowcode/doc-builder project to &quot;sasha-publish&quot;, including all package references,..."><i class="ph ph-x-circle" style="color: #dc2626;"></i> Project Rename Strategy Sasha Publish</a></div></div>
256
- <div class="nav-section" data-level="1">
257
- <a class="nav-title collapsible" href="#" data-target="nav-test-questions-1" >
258
- <i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-folder"></i> Test Questions
259
- </a>
260
- <div class="nav-content collapsed" id="nav-test-questions-1">
261
- <a href="/test-questions/how-does-it-work%3F.html" class="nav-item" data-tooltip="This is a test file to verify that question marks work properly in filenames."><i class="ph ph-file-text"></i> How Does It Work?</a>
262
- <a href="/test-questions/step-1%3A%20getting-started.html" class="nav-item" data-tooltip="Step 1: Getting Started."><i class="ph ph-file-text"></i> Step 1: Getting Started</a>
263
- <a href="/test-questions/what-is-the-purpose.html" class="nav-item" data-tooltip="Understanding the purpose of our documentation system"><i class="ph ph-file-text"></i> What Is The Purpose?</a></div></div>
264
- </nav>
265
- <div class="resize-handle"></div>
266
- </aside>
267
-
268
- <!-- Content Area -->
269
- <main class="content">
270
- <div class="content-inner">
271
- <h1>Bubble.io Plugin Specification</h1>
272
- <h2>Overview</h2>
273
- <p>This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers to create and manage beautiful documentation directly from their Bubble applications.</p>
274
- <h2>Plugin Architecture</h2>
275
- <h3>Core Components</h3>
276
- <pre><code>bubble-doc-builder/
277
- ├── plugin.json # Plugin manifest
278
- ├── elements/
279
- │ ├── DocViewer/ # Main documentation viewer
280
- │ │ ├── element.json # Element configuration
281
- │ │ ├── preview.js # Editor preview
282
- │ │ ├── runtime.js # Runtime behavior
283
- │ │ └── style.css # Component styling
284
- │ ├── DocSearch/ # Search component
285
- │ └── DocNav/ # Navigation widget
286
- ├── actions/
287
- │ ├── generate-docs/ # Generate documentation
288
- │ ├── deploy-to-vercel/ # Deploy documentation
289
- │ ├── update-content/ # Update doc content
290
- │ └── sync-from-bubble/ # Sync Bubble data
291
- ├── api/
292
- │ ├── calls/ # API definitions
293
- │ └── shared.js # Shared utilities
294
- └── assets/
295
- ├── icons/ # Plugin icons
296
- └── templates/ # Doc templates
297
- </code></pre>
298
- <h2>Element Specifications</h2>
299
- <h3>1. DocViewer Element</h3>
300
- <p>The main component for displaying documentation within Bubble apps.</p>
301
- <h4>Properties</h4>
302
- <table>
303
- <thead>
304
- <tr>
305
- <th>Property</th>
306
- <th>Type</th>
307
- <th>Default</th>
308
- <th>Description</th>
309
- </tr>
310
- </thead>
311
- <tbody><tr>
312
- <td>doc_url</td>
313
- <td>text</td>
314
- <td>&quot;&quot;</td>
315
- <td>URL of hosted documentation</td>
316
- </tr>
317
- <tr>
318
- <td>theme</td>
319
- <td>dropdown</td>
320
- <td>&quot;light&quot;</td>
321
- <td>Theme selection (light/dark/auto)</td>
322
- </tr>
323
- <tr>
324
- <td>show_navigation</td>
325
- <td>boolean</td>
326
- <td>true</td>
327
- <td>Show/hide navigation sidebar</td>
328
- </tr>
329
- <tr>
330
- <td>show_search</td>
331
- <td>boolean</td>
332
- <td>true</td>
333
- <td>Enable search functionality</td>
334
- </tr>
335
- <tr>
336
- <td>custom_css</td>
337
- <td>text</td>
338
- <td>&quot;&quot;</td>
339
- <td>Custom CSS overrides</td>
340
- </tr>
341
- <tr>
342
- <td>height</td>
343
- <td>number</td>
344
- <td>600</td>
345
- <td>Viewer height in pixels</td>
346
- </tr>
347
- <tr>
348
- <td>auth_required</td>
349
- <td>boolean</td>
350
- <td>false</td>
351
- <td>Require authentication</td>
352
- </tr>
353
- <tr>
354
- <td>auth_token</td>
355
- <td>text</td>
356
- <td>&quot;&quot;</td>
357
- <td>Authentication token</td>
358
- </tr>
359
- </tbody></table>
360
- <h4>States</h4>
361
- <table>
362
- <thead>
363
- <tr>
364
- <th>State</th>
365
- <th>Type</th>
366
- <th>Description</th>
367
- </tr>
368
- </thead>
369
- <tbody><tr>
370
- <td>is_loading</td>
371
- <td>boolean</td>
372
- <td>Documentation loading state</td>
373
- </tr>
374
- <tr>
375
- <td>current_page</td>
376
- <td>text</td>
377
- <td>Current page path</td>
378
- </tr>
379
- <tr>
380
- <td>search_results</td>
381
- <td>list</td>
382
- <td>Search results array</td>
383
- </tr>
384
- <tr>
385
- <td>error_message</td>
386
- <td>text</td>
387
- <td>Error details if any</td>
388
- </tr>
389
- </tbody></table>
390
- <h4>Events</h4>
391
- <ul>
392
- <li><strong>Documentation Loaded</strong> - Triggered when docs load</li>
393
- <li><strong>Page Changed</strong> - Fired on navigation</li>
394
- <li><strong>Search Performed</strong> - When user searches</li>
395
- <li><strong>Error Occurred</strong> - On loading errors</li>
396
- </ul>
397
- <h3>2. DocSearch Element</h3>
398
- <p>Standalone search widget for documentation.</p>
399
- <h4>Properties</h4>
400
- <table>
401
- <thead>
402
- <tr>
403
- <th>Property</th>
404
- <th>Type</th>
405
- <th>Default</th>
406
- <th>Description</th>
407
- </tr>
408
- </thead>
409
- <tbody><tr>
410
- <td>doc_source</td>
411
- <td>text</td>
412
- <td>&quot;&quot;</td>
413
- <td>Documentation source URL</td>
414
- </tr>
415
- <tr>
416
- <td>placeholder</td>
417
- <td>text</td>
418
- <td>&quot;Search docs...&quot;</td>
419
- <td>Search placeholder</td>
420
- </tr>
421
- <tr>
422
- <td>max_results</td>
423
- <td>number</td>
424
- <td>10</td>
425
- <td>Maximum results</td>
426
- </tr>
427
- <tr>
428
- <td>show_preview</td>
429
- <td>boolean</td>
430
- <td>true</td>
431
- <td>Show result previews</td>
432
- </tr>
433
- </tbody></table>
434
- <h3>3. DocNav Element</h3>
435
- <p>Navigation tree component.</p>
436
- <h4>Properties</h4>
437
- <table>
438
- <thead>
439
- <tr>
440
- <th>Property</th>
441
- <th>Type</th>
442
- <th>Default</th>
443
- <th>Description</th>
444
- </tr>
445
- </thead>
446
- <tbody><tr>
447
- <td>doc_structure</td>
448
- <td>text</td>
449
- <td>&quot;&quot;</td>
450
- <td>JSON navigation structure</td>
451
- </tr>
452
- <tr>
453
- <td>collapsible</td>
454
- <td>boolean</td>
455
- <td>true</td>
456
- <td>Allow collapse/expand</td>
457
- </tr>
458
- <tr>
459
- <td>show_icons</td>
460
- <td>boolean</td>
461
- <td>true</td>
462
- <td>Show file/folder icons</td>
463
- </tr>
464
- </tbody></table>
465
- <h2>Action Specifications</h2>
466
- <h3>1. Generate Documentation</h3>
467
- <p>Creates documentation from Bubble app data.</p>
468
- <h4>Parameters</h4>
469
- <table>
470
- <thead>
471
- <tr>
472
- <th>Parameter</th>
473
- <th>Type</th>
474
- <th>Required</th>
475
- <th>Description</th>
476
- </tr>
477
- </thead>
478
- <tbody><tr>
479
- <td>source_type</td>
480
- <td>dropdown</td>
481
- <td>Yes</td>
482
- <td>Data source (database/API/page)</td>
483
- </tr>
484
- <tr>
485
- <td>content_list</td>
486
- <td>list</td>
487
- <td>Yes</td>
488
- <td>List of content to document</td>
489
- </tr>
490
- <tr>
491
- <td>output_format</td>
492
- <td>dropdown</td>
493
- <td>Yes</td>
494
- <td>Format (markdown/html)</td>
495
- </tr>
496
- <tr>
497
- <td>include_schemas</td>
498
- <td>boolean</td>
499
- <td>No</td>
500
- <td>Include data schemas</td>
501
- </tr>
502
- <tr>
503
- <td>template</td>
504
- <td>dropdown</td>
505
- <td>No</td>
506
- <td>Documentation template</td>
507
- </tr>
508
- </tbody></table>
509
- <h4>Output</h4>
510
- <ul>
511
- <li><code>documentation_url</code> - Generated documentation URL</li>
512
- <li><code>generation_time</code> - Time taken in ms</li>
513
- <li><code>page_count</code> - Number of pages created</li>
514
- </ul>
515
- <h3>2. Deploy to Vercel</h3>
516
- <p>Deploys documentation to Vercel.</p>
517
- <h4>Parameters</h4>
518
- <table>
519
- <thead>
520
- <tr>
521
- <th>Parameter</th>
522
- <th>Type</th>
523
- <th>Required</th>
524
- <th>Description</th>
525
- </tr>
526
- </thead>
527
- <tbody><tr>
528
- <td>project_name</td>
529
- <td>text</td>
530
- <td>Yes</td>
531
- <td>Vercel project name</td>
532
- </tr>
533
- <tr>
534
- <td>vercel_token</td>
535
- <td>text</td>
536
- <td>Yes</td>
537
- <td>Vercel API token</td>
538
- </tr>
539
- <tr>
540
- <td>domain</td>
541
- <td>text</td>
542
- <td>No</td>
543
- <td>Custom domain</td>
544
- </tr>
545
- <tr>
546
- <td>production</td>
547
- <td>boolean</td>
548
- <td>No</td>
549
- <td>Deploy to production</td>
550
- </tr>
551
- </tbody></table>
552
- <h4>Output</h4>
553
- <ul>
554
- <li><code>deployment_url</code> - Live documentation URL</li>
555
- <li><code>deployment_id</code> - Vercel deployment ID</li>
556
- <li><code>status</code> - Deployment status</li>
557
- </ul>
558
- <h3>3. Update Content</h3>
559
- <p>Updates specific documentation content.</p>
560
- <h4>Parameters</h4>
561
- <table>
562
- <thead>
563
- <tr>
564
- <th>Parameter</th>
565
- <th>Type</th>
566
- <th>Required</th>
567
- <th>Description</th>
568
- </tr>
569
- </thead>
570
- <tbody><tr>
571
- <td>page_path</td>
572
- <td>text</td>
573
- <td>Yes</td>
574
- <td>Path to page</td>
575
- </tr>
576
- <tr>
577
- <td>new_content</td>
578
- <td>text</td>
579
- <td>Yes</td>
580
- <td>Updated content</td>
581
- </tr>
582
- <tr>
583
- <td>commit_message</td>
584
- <td>text</td>
585
- <td>No</td>
586
- <td>Change description</td>
587
- </tr>
588
- <tr>
589
- <td>auto_deploy</td>
590
- <td>boolean</td>
591
- <td>No</td>
592
- <td>Auto-deploy changes</td>
593
- </tr>
594
- </tbody></table>
595
- <h3>4. Sync from Bubble</h3>
596
- <p>Synchronizes documentation with Bubble data.</p>
597
- <h4>Parameters</h4>
598
- <table>
599
- <thead>
600
- <tr>
601
- <th>Parameter</th>
602
- <th>Type</th>
603
- <th>Required</th>
604
- <th>Description</th>
605
- </tr>
606
- </thead>
607
- <tbody><tr>
608
- <td>sync_type</td>
609
- <td>dropdown</td>
610
- <td>Yes</td>
611
- <td>Manual/automatic/scheduled</td>
612
- </tr>
613
- <tr>
614
- <td>data_types</td>
615
- <td>list</td>
616
- <td>Yes</td>
617
- <td>Bubble data types to sync</td>
618
- </tr>
619
- <tr>
620
- <td>sync_interval</td>
621
- <td>number</td>
622
- <td>No</td>
623
- <td>Interval in minutes</td>
624
- </tr>
625
- <tr>
626
- <td>webhook_url</td>
627
- <td>text</td>
628
- <td>No</td>
629
- <td>Webhook for updates</td>
630
- </tr>
631
- </tbody></table>
632
- <h2>API Integration</h2>
633
- <h3>Authentication Flow</h3>
634
- <pre><code class="language-javascript">// Initialize doc-builder API
635
- function initializeDocBuilder(apiKey, bubbleAppId) {
636
- return {
637
- baseUrl: &#39;https://api.doc-builder.io&#39;,
638
- headers: {
639
- &#39;Authorization&#39;: `Bearer ${apiKey}`,
640
- &#39;X-Bubble-App-ID&#39;: bubbleAppId,
641
- &#39;Content-Type&#39;: &#39;application/json&#39;
642
- }
643
- };
644
- }
645
- </code></pre>
646
- <h3>Webhook Events</h3>
647
- <table>
648
- <thead>
649
- <tr>
650
- <th>Event</th>
651
- <th>Payload</th>
652
- <th>Description</th>
653
- </tr>
654
- </thead>
655
- <tbody><tr>
656
- <td>docs.generated</td>
657
- <td><code>{pages, url, timestamp}</code></td>
658
- <td>Documentation generated</td>
659
- </tr>
660
- <tr>
661
- <td>docs.deployed</td>
662
- <td><code>{url, version, environment}</code></td>
663
- <td>Deployment complete</td>
664
- </tr>
665
- <tr>
666
- <td>docs.updated</td>
667
- <td><code>{changes, author, timestamp}</code></td>
668
- <td>Content updated</td>
669
- </tr>
670
- <tr>
671
- <td>docs.error</td>
672
- <td><code>{error, context, timestamp}</code></td>
673
- <td>Error occurred</td>
674
- </tr>
675
- </tbody></table>
676
- <h2>Bubble Database Schema</h2>
677
- <h3>DocBuilder Config</h3>
678
- <table>
679
- <thead>
680
- <tr>
681
- <th>Field</th>
682
- <th>Type</th>
683
- <th>Description</th>
684
- </tr>
685
- </thead>
686
- <tbody><tr>
687
- <td>api_key</td>
688
- <td>text</td>
689
- <td>Doc-builder API key</td>
690
- </tr>
691
- <tr>
692
- <td>vercel_token</td>
693
- <td>text</td>
694
- <td>Vercel deployment token</td>
695
- </tr>
696
- <tr>
697
- <td>project_name</td>
698
- <td>text</td>
699
- <td>Documentation project name</td>
700
- </tr>
701
- <tr>
702
- <td>base_url</td>
703
- <td>text</td>
704
- <td>Documentation base URL</td>
705
- </tr>
706
- <tr>
707
- <td>last_sync</td>
708
- <td>date</td>
709
- <td>Last synchronization</td>
710
- </tr>
711
- <tr>
712
- <td>auto_sync</td>
713
- <td>boolean</td>
714
- <td>Enable auto-sync</td>
715
- </tr>
716
- <tr>
717
- <td>sync_interval</td>
718
- <td>number</td>
719
- <td>Sync interval (minutes)</td>
720
- </tr>
721
- </tbody></table>
722
- <h3>Documentation Pages</h3>
723
- <table>
724
- <thead>
725
- <tr>
726
- <th>Field</th>
727
- <th>Type</th>
728
- <th>Description</th>
729
- </tr>
730
- </thead>
731
- <tbody><tr>
732
- <td>title</td>
733
- <td>text</td>
734
- <td>Page title</td>
735
- </tr>
736
- <tr>
737
- <td>slug</td>
738
- <td>text</td>
739
- <td>URL slug</td>
740
- </tr>
741
- <tr>
742
- <td>content</td>
743
- <td>text</td>
744
- <td>Markdown content</td>
745
- </tr>
746
- <tr>
747
- <td>parent_page</td>
748
- <td>DocPage</td>
749
- <td>Parent for hierarchy</td>
750
- </tr>
751
- <tr>
752
- <td>order</td>
753
- <td>number</td>
754
- <td>Sort order</td>
755
- </tr>
756
- <tr>
757
- <td>is_published</td>
758
- <td>boolean</td>
759
- <td>Publication status</td>
760
- </tr>
761
- <tr>
762
- <td>last_modified</td>
763
- <td>date</td>
764
- <td>Last update</td>
765
- </tr>
766
- <tr>
767
- <td>author</td>
768
- <td>User</td>
769
- <td>Page author</td>
770
- </tr>
771
- </tbody></table>
772
- <h3>Documentation Templates</h3>
773
- <table>
774
- <thead>
775
- <tr>
776
- <th>Field</th>
777
- <th>Type</th>
778
- <th>Description</th>
779
- </tr>
780
- </thead>
781
- <tbody><tr>
782
- <td>name</td>
783
- <td>text</td>
784
- <td>Template name</td>
785
- </tr>
786
- <tr>
787
- <td>description</td>
788
- <td>text</td>
789
- <td>Template description</td>
790
- </tr>
791
- <tr>
792
- <td>structure</td>
793
- <td>text</td>
794
- <td>JSON structure</td>
795
- </tr>
796
- <tr>
797
- <td>styles</td>
798
- <td>text</td>
799
- <td>Custom CSS</td>
800
- </tr>
801
- <tr>
802
- <td>is_default</td>
803
- <td>boolean</td>
804
- <td>Default template</td>
805
- </tr>
806
- </tbody></table>
807
- <h2>Use Cases</h2>
808
- <h3>1. API Documentation</h3>
809
- <p>Automatically generate API documentation from Bubble API workflows:</p>
810
- <pre><code class="language-javascript">// Generate API docs from workflows
811
- generateDocs({
812
- source_type: &#39;api_workflows&#39;,
813
- include_schemas: true,
814
- template: &#39;api_reference&#39;
815
- });
816
- </code></pre>
817
- <h3>2. User Guides</h3>
818
- <p>Create user documentation from Bubble pages:</p>
819
- <pre><code class="language-javascript">// Generate user guide from app pages
820
- generateDocs({
821
- source_type: &#39;pages&#39;,
822
- content_list: [&#39;dashboard&#39;, &#39;settings&#39;, &#39;profile&#39;],
823
- template: &#39;user_guide&#39;
824
- });
825
- </code></pre>
826
- <h3>3. Database Documentation</h3>
827
- <p>Document data types and fields:</p>
828
- <pre><code class="language-javascript">// Document database structure
829
- generateDocs({
830
- source_type: &#39;database&#39;,
831
- include_schemas: true,
832
- template: &#39;data_dictionary&#39;
833
- });
834
- </code></pre>
835
- <h2>Implementation Roadmap</h2>
836
- <h3>Phase 1: MVP (2 weeks)</h3>
837
- <ul>
838
- <li><input disabled="" type="checkbox"> Basic DocViewer element</li>
839
- <li><input disabled="" type="checkbox"> Generate documentation action</li>
840
- <li><input disabled="" type="checkbox"> Simple deployment to Vercel</li>
841
- <li><input disabled="" type="checkbox"> Supabase authentication integration</li>
842
- </ul>
843
- <h3>Phase 2: Enhanced Features (2 weeks)</h3>
844
- <ul>
845
- <li><input disabled="" type="checkbox"> DocSearch element</li>
846
- <li><input disabled="" type="checkbox"> DocNav element</li>
847
- <li><input disabled="" type="checkbox"> Update content action</li>
848
- <li><input disabled="" type="checkbox"> Webhook integration</li>
849
- </ul>
850
- <h3>Phase 3: Advanced Integration (2 weeks)</h3>
851
- <ul>
852
- <li><input disabled="" type="checkbox"> Auto-sync from Bubble</li>
853
- <li><input disabled="" type="checkbox"> Custom templates</li>
854
- <li><input disabled="" type="checkbox"> Multi-language support</li>
855
- <li><input disabled="" type="checkbox"> Analytics integration</li>
856
- </ul>
857
- <h3>Phase 4: Polish &amp; Launch (1 week)</h3>
858
- <ul>
859
- <li><input disabled="" type="checkbox"> Performance optimization</li>
860
- <li><input disabled="" type="checkbox"> Error handling</li>
861
- <li><input disabled="" type="checkbox"> Documentation</li>
862
- <li><input disabled="" type="checkbox"> Marketplace submission</li>
863
- </ul>
864
- <h2>Plugin Settings</h2>
865
- <h3>General Settings</h3>
866
- <pre><code class="language-json">{
867
- &quot;name&quot;: &quot;Doc Builder for Bubble&quot;,
868
- &quot;description&quot;: &quot;Create beautiful documentation from your Bubble app&quot;,
869
- &quot;categories&quot;: [&quot;data&quot;, &quot;visual elements&quot;, &quot;analytics&quot;],
870
- &quot;plugin_version&quot;: &quot;1.0.0&quot;,
871
- &quot;documentation_url&quot;: &quot;https://doc-builder.io/bubble-plugin&quot;,
872
- &quot;support_email&quot;: &quot;support@doc-builder.io&quot;
873
- }
874
- </code></pre>
875
- <h3>API Connections</h3>
876
- <pre><code class="language-json">{
877
- &quot;api_connections&quot;: [
878
- {
879
- &quot;name&quot;: &quot;DocBuilder API&quot;,
880
- &quot;base_url&quot;: &quot;https://api.doc-builder.io/v1&quot;,
881
- &quot;authentication&quot;: &quot;bearer_token&quot;,
882
- &quot;shared_headers&quot;: {
883
- &quot;X-Plugin-Version&quot;: &quot;1.0.0&quot;,
884
- &quot;X-Platform&quot;: &quot;bubble&quot;
885
- }
886
- }
887
- ]
888
- }
889
- </code></pre>
890
- <h2>Security Considerations</h2>
891
- <h3>API Key Management</h3>
892
- <ul>
893
- <li>Store API keys encrypted in Bubble database</li>
894
- <li>Use Bubble&#39;s privacy rules for key access</li>
895
- <li>Implement key rotation mechanism</li>
896
- <li>Log all API key usage</li>
897
- </ul>
898
- <h3>Content Security</h3>
899
- <ul>
900
- <li>Sanitize all user-generated content</li>
901
- <li>Implement CSP headers for embedded docs</li>
902
- <li>Use iframe sandboxing for viewer</li>
903
- <li>Validate all webhook signatures</li>
904
- </ul>
905
- <h3>Access Control</h3>
906
- <ul>
907
- <li>Integrate with Bubble&#39;s user roles</li>
908
- <li>Implement document-level permissions</li>
909
- <li>Support SSO for enterprise users</li>
910
- <li>Audit trail for all actions</li>
911
- </ul>
912
- <h2>Performance Optimization</h2>
913
- <h3>Caching Strategy</h3>
914
- <ul>
915
- <li>Cache generated documentation (1 hour)</li>
916
- <li>CDN integration for static assets</li>
917
- <li>Lazy load documentation sections</li>
918
- <li>Progressive enhancement</li>
919
- </ul>
920
- <h3>Resource Management</h3>
921
- <ul>
922
- <li>Limit concurrent API calls</li>
923
- <li>Implement request queuing</li>
924
- <li>Optimize large documentation sets</li>
925
- <li>Background processing for heavy tasks</li>
926
- </ul>
927
- <h2>Pricing Model for Plugin</h2>
928
- <h3>Free Tier</h3>
929
- <ul>
930
- <li>Up to 10 documentation pages</li>
931
- <li>Basic templates</li>
932
- <li>Community support</li>
933
- <li>Bubble.io branding</li>
934
- </ul>
935
- <h3>Pro Tier ($19/month)</h3>
936
- <ul>
937
- <li>Unlimited pages</li>
938
- <li>Custom templates</li>
939
- <li>Priority support</li>
940
- <li>White-label option</li>
941
- </ul>
942
- <h3>Team Tier ($49/month)</h3>
943
- <ul>
944
- <li>Everything in Pro</li>
945
- <li>Team collaboration</li>
946
- <li>Advanced analytics</li>
947
- <li>API access</li>
948
- </ul>
949
- <h2>Success Metrics</h2>
950
- <h3>Usage Metrics</h3>
951
- <ul>
952
- <li>Plugin installations</li>
953
- <li>Active users (MAU)</li>
954
- <li>Documentation pages created</li>
955
- <li>Deployments per month</li>
956
- </ul>
957
- <h3>Performance Metrics</h3>
958
- <ul>
959
- <li>API response time (&lt;200ms)</li>
960
- <li>Documentation load time (&lt;2s)</li>
961
- <li>Search response time (&lt;100ms)</li>
962
- <li>Uptime (99.9%)</li>
963
- </ul>
964
- <h3>Business Metrics</h3>
965
- <ul>
966
- <li>Conversion rate (free to paid)</li>
967
- <li>Customer lifetime value</li>
968
- <li>Monthly recurring revenue</li>
969
- <li>Support ticket volume</li>
970
- </ul>
971
- <hr>
972
- <h2>Document History</h2>
973
- <table>
974
- <thead>
975
- <tr>
976
- <th>Date</th>
977
- <th>Author</th>
978
- <th>Changes</th>
979
- </tr>
980
- </thead>
981
- <tbody><tr>
982
- <td>2025-07-22</td>
983
- <td>System</td>
984
- <td>Initial plugin specification</td>
985
- </tr>
986
- </tbody></table>
987
-
988
- </div>
989
- </main>
990
- </div>
991
-
992
- <!-- Scripts -->
993
- <script>
994
- // Pass configuration to frontend
995
- window.docBuilderConfig = {
996
- features: {
997
- showPdfDownload: true,
998
- menuDefaultOpen: false,
999
- mermaidEnhanced: true
1000
- }
1001
- };
1002
- </script>
1003
- <script src="/js/main.js"></script>
1004
- <script src="https://unpkg.com/@supabase/supabase-js@2"></script>
1005
- <script src="/js/auth.js"></script>
1006
- </body>
1007
- </html>