@knowcode/doc-builder 1.7.6 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +6 -1
- package/CHANGELOG.md +29 -0
- package/assets/css/notion-style.css +9 -1
- package/assets/js/main.js +10 -6
- package/html/README.html +44 -20
- package/html/auth.js +62 -13
- package/html/css/notion-style.css +9 -1
- package/html/documentation-index.html +44 -20
- package/html/guides/authentication-default-change.html +44 -20
- package/html/guides/authentication-guide.html +228 -263
- package/html/guides/claude-workflow-guide.html +44 -20
- package/html/guides/documentation-standards.html +44 -20
- package/html/guides/phosphor-icons-guide.html +44 -20
- package/html/guides/private-directory-authentication.html +472 -0
- package/html/guides/public-site-deployment.html +50 -25
- package/html/guides/search-engine-verification-guide.html +44 -20
- package/html/guides/seo-guide.html +44 -20
- package/html/guides/seo-optimization-guide.html +44 -20
- package/html/guides/troubleshooting-guide.html +44 -20
- package/html/guides/windows-setup-guide.html +44 -20
- package/html/index.html +44 -20
- package/html/js/auth.js +118 -39
- package/html/js/main.js +10 -6
- package/html/login.html +4 -4
- package/html/logout.html +2 -2
- package/html/private/cache-control-anti-pattern.html +408 -0
- package/html/private/launch/README.html +350 -0
- package/html/private/launch/auth-cleanup-summary.html +340 -0
- package/html/private/launch/bubble-plugin-specification.html +986 -0
- package/html/private/launch/go-to-market-strategy.html +716 -0
- package/html/private/launch/launch-announcements.html +646 -0
- package/html/private/launch/vercel-deployment-auth-setup.html +390 -0
- package/html/private/next-steps-walkthrough.html +685 -0
- package/html/private/supabase-auth-implementation-completed.html +433 -0
- package/html/private/supabase-auth-implementation-plan.html +590 -0
- package/html/private/supabase-auth-integration-plan.html +718 -0
- package/html/private/supabase-auth-setup-guide.html +545 -0
- package/html/private/test-private-doc.html +281 -0
- package/html/robots.txt +4 -0
- package/html/sitemap.xml +113 -29
- package/html/vercel-cli-setup-guide.html +44 -20
- package/html/vercel-first-time-setup-guide.html +44 -20
- package/lib/config.js +21 -3
- package/lib/core-builder.js +49 -7
- package/lib/supabase-auth.js +80 -25
- package/package.json +1 -1
- package/user-management/README.md +306 -0
- package/user-management/add-users.sh +730 -0
- package/user-management/create-user.js +65 -0
- package/user-management/users.txt +15 -0
|
@@ -34,7 +34,12 @@
|
|
|
34
34
|
"Bash(pkill:*)",
|
|
35
35
|
"Bash(curl:*)",
|
|
36
36
|
"Bash(./cli.js build:*)",
|
|
37
|
-
"Bash(./cli.js deploy:*)"
|
|
37
|
+
"Bash(./cli.js deploy:*)",
|
|
38
|
+
"Bash(./add-users.sh:*)",
|
|
39
|
+
"Bash(python3:*)",
|
|
40
|
+
"Bash(chmod:*)",
|
|
41
|
+
"Bash(supabase auth:*)",
|
|
42
|
+
"Bash(supabase:*)"
|
|
38
43
|
],
|
|
39
44
|
"deny": []
|
|
40
45
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,35 @@ All notable changes to @knowcode/doc-builder will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.8.1] - 2025-07-26
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- Private directory now **always** enables authentication, even when config explicitly sets `authentication: false`
|
|
12
|
+
- This is a security enhancement to ensure private content is never accidentally exposed
|
|
13
|
+
- Updated documentation to clarify that private directories override config settings for security
|
|
14
|
+
|
|
15
|
+
## [1.8.0] - 2025-07-26
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- **Automatic Private Directory Authentication**: Simply create a `docs/private/` folder to enable authentication
|
|
19
|
+
- Private documents are completely hidden from unauthenticated users
|
|
20
|
+
- Unified login/logout button that dynamically changes icon based on authentication state
|
|
21
|
+
- Smart navigation filtering - private files only shown on authenticated pages
|
|
22
|
+
- Comprehensive guide for private directory authentication feature
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
- Navigation building now filters files based on authentication status
|
|
26
|
+
- Auth button replaces separate logout button for cleaner UI
|
|
27
|
+
- Public pages remain accessible even when authentication is enabled
|
|
28
|
+
- Authentication script only redirects on private pages, not public ones
|
|
29
|
+
|
|
30
|
+
### How it Works
|
|
31
|
+
- Create a `docs/private/` directory and authentication is automatically enabled
|
|
32
|
+
- Private documents don't appear in navigation for unauthenticated users
|
|
33
|
+
- Attempting to access private URLs directly redirects to login
|
|
34
|
+
- After login, users see complete navigation including private sections
|
|
35
|
+
- Zero configuration required - just organize your files
|
|
36
|
+
|
|
8
37
|
## [1.7.6] - 2025-07-25
|
|
9
38
|
|
|
10
39
|
### Added
|
|
@@ -289,7 +289,8 @@ pre code {
|
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
.logout-btn
|
|
292
|
+
.logout-btn,
|
|
293
|
+
.auth-btn {
|
|
293
294
|
background: none;
|
|
294
295
|
border: none;
|
|
295
296
|
font-size: var(--text-lg);
|
|
@@ -312,6 +313,13 @@ pre code {
|
|
|
312
313
|
transform: translateY(-1px);
|
|
313
314
|
}
|
|
314
315
|
|
|
316
|
+
.auth-btn:hover {
|
|
317
|
+
background: var(--color-bg-tertiary);
|
|
318
|
+
opacity: 1;
|
|
319
|
+
color: var(--color-text-primary);
|
|
320
|
+
transform: translateY(-1px);
|
|
321
|
+
}
|
|
322
|
+
|
|
315
323
|
/* Sidebar */
|
|
316
324
|
.sidebar {
|
|
317
325
|
position: relative;
|
package/assets/js/main.js
CHANGED
|
@@ -665,12 +665,16 @@ document.addEventListener('click', (e) => {
|
|
|
665
665
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
|
666
666
|
anchor.addEventListener('click', function (e) {
|
|
667
667
|
e.preventDefault();
|
|
668
|
-
const
|
|
669
|
-
if (
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
668
|
+
const href = this.getAttribute('href');
|
|
669
|
+
// Skip if href is just '#' (prevents querySelector error)
|
|
670
|
+
if (href && href !== '#') {
|
|
671
|
+
const target = document.querySelector(href);
|
|
672
|
+
if (target) {
|
|
673
|
+
target.scrollIntoView({
|
|
674
|
+
behavior: 'smooth',
|
|
675
|
+
block: 'start'
|
|
676
|
+
});
|
|
677
|
+
}
|
|
674
678
|
}
|
|
675
679
|
});
|
|
676
680
|
});
|
package/html/README.html
CHANGED
|
@@ -46,6 +46,39 @@
|
|
|
46
46
|
<link rel="stylesheet" href="/css/notion-style.css">
|
|
47
47
|
|
|
48
48
|
|
|
49
|
+
<!-- Hide content until auth check -->
|
|
50
|
+
<style>
|
|
51
|
+
body {
|
|
52
|
+
visibility: hidden;
|
|
53
|
+
opacity: 0;
|
|
54
|
+
transition: opacity 0.3s ease;
|
|
55
|
+
}
|
|
56
|
+
body.authenticated {
|
|
57
|
+
visibility: visible;
|
|
58
|
+
opacity: 1;
|
|
59
|
+
}
|
|
60
|
+
/* Show login/logout pages immediately */
|
|
61
|
+
body.auth-page {
|
|
62
|
+
visibility: visible;
|
|
63
|
+
opacity: 1;
|
|
64
|
+
}
|
|
65
|
+
/* Style auth button consistently */
|
|
66
|
+
.auth-btn {
|
|
67
|
+
background: none;
|
|
68
|
+
border: none;
|
|
69
|
+
color: var(--text-secondary);
|
|
70
|
+
cursor: pointer;
|
|
71
|
+
padding: 0.5rem;
|
|
72
|
+
border-radius: 0.5rem;
|
|
73
|
+
transition: all 0.2s;
|
|
74
|
+
font-size: 1.1rem;
|
|
75
|
+
}
|
|
76
|
+
.auth-btn:hover {
|
|
77
|
+
background: var(--bg-secondary);
|
|
78
|
+
color: var(--text-primary);
|
|
79
|
+
}
|
|
80
|
+
</style>
|
|
81
|
+
|
|
49
82
|
|
|
50
83
|
<!-- Favicon -->
|
|
51
84
|
<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>">
|
|
@@ -65,8 +98,8 @@
|
|
|
65
98
|
"name": "Knowcode Ltd",
|
|
66
99
|
"url": "https://knowcode.tech"
|
|
67
100
|
},
|
|
68
|
-
"datePublished": "2025-07-
|
|
69
|
-
"dateModified": "2025-07-
|
|
101
|
+
"datePublished": "2025-07-26T10:20:52.365Z",
|
|
102
|
+
"dateModified": "2025-07-26T10:20:52.365Z",
|
|
70
103
|
"mainEntityOfPage": {
|
|
71
104
|
"@type": "WebPage",
|
|
72
105
|
"@id": "https://doc-builder-delta.vercel.app/README.html"
|
|
@@ -99,10 +132,14 @@
|
|
|
99
132
|
|
|
100
133
|
<div class="header-actions">
|
|
101
134
|
<div class="deployment-info">
|
|
102
|
-
<span class="deployment-date" title="Built with doc-builder v1.
|
|
135
|
+
<span class="deployment-date" title="Built with doc-builder v1.8.0">Last updated: Jul 26, 2025, 10:20 AM UTC</span>
|
|
103
136
|
</div>
|
|
104
137
|
|
|
105
138
|
|
|
139
|
+
<a href="../login.html" class="auth-btn" title="Login/Logout">
|
|
140
|
+
<i class="fas fa-sign-in-alt"></i>
|
|
141
|
+
</a>
|
|
142
|
+
|
|
106
143
|
|
|
107
144
|
<button id="theme-toggle" class="theme-toggle" aria-label="Toggle theme">
|
|
108
145
|
<i class="fas fa-moon"></i>
|
|
@@ -158,31 +195,17 @@
|
|
|
158
195
|
</a>
|
|
159
196
|
<div class="nav-content" id="nav-guides-1">
|
|
160
197
|
<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="fas fa-file-alt"></i> Authentication Default Change</a>
|
|
161
|
-
<a href="/guides/authentication-guide.html" class="nav-item" data-tooltip="
|
|
162
|
-
<a href="/guides/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="fas fa-file-alt"></i> Cache Control Anti Pattern</a>
|
|
198
|
+
<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="fas fa-file-alt"></i> Authentication Guide</a>
|
|
163
199
|
<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="fas fa-file-alt"></i> Claude Workflow Guide</a>
|
|
164
200
|
<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="fas fa-file-alt"></i> Documentation Standards</a>
|
|
165
|
-
<a href="/guides/next-steps-walkthrough.html" class="nav-item" data-tooltip="Now that we've implemented Supabase authentication, let's walk through testing the implementation and preparing for deployment."><i class="fas fa-file-alt"></i> Next Steps Walkthrough</a>
|
|
166
201
|
<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="fas fa-file-alt"></i> Phosphor Icons Guide</a>
|
|
202
|
+
<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="fas fa-file-alt"></i> Private Directory Authentication</a>
|
|
167
203
|
<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="fas fa-file-alt"></i> Public Site Deployment</a>
|
|
168
204
|
<a href="/guides/search-engine-verification-guide.html" class="nav-item" data-tooltip="Search engine verification provides access to powerful webmaster tools:."><i class="fas fa-file-alt"></i> Search Engine Verification Guide</a>
|
|
169
205
|
<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="fas fa-file-alt"></i> Seo Guide</a>
|
|
170
206
|
<a href="/guides/seo-optimization-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes comprehensive SEO (Search Engine Optimization) features that automatically optimize your documentation for search..."><i class="fas fa-file-alt"></i> Seo Optimization Guide</a>
|
|
171
|
-
<a href="/guides/supabase-auth-implementation-plan.html" class="nav-item" data-tooltip="Supabase Auth Implementation Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Implementation Plan</a>
|
|
172
|
-
<a href="/guides/supabase-auth-integration-plan.html" class="nav-item" data-tooltip="Supabase Authentication Integration Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Integration Plan</a>
|
|
173
|
-
<a href="/guides/supabase-auth-setup-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder now supports enterprise-grade authentication through Supabase, replacing the previous insecure basic authentication."><i class="fas fa-file-alt"></i> Supabase Auth Setup Guide</a>
|
|
174
207
|
<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="fas fa-file-alt"></i> Troubleshooting Guide</a>
|
|
175
|
-
<a href="/guides/vercel-deployment-auth-setup.html" class="nav-item" data-tooltip="Vercel Deployment Authentication Setup Guide."><i class="fas fa-file-alt"></i> Vercel Deployment Auth Setup</a>
|
|
176
208
|
<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="fas fa-file-alt"></i> Windows Setup Guide</a></div></div>
|
|
177
|
-
<div class="nav-section" data-level="1">
|
|
178
|
-
<a class="nav-title collapsible expanded" href="/launch/README.html" data-target="nav-launch-1" >
|
|
179
|
-
<i class="fas fa-chevron-right collapse-icon"></i><i class="fas fa-folder"></i> Launch
|
|
180
|
-
</a>
|
|
181
|
-
<div class="nav-content" id="nav-launch-1">
|
|
182
|
-
<a href="/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="fas fa-file-alt"></i> Launch Overview</a>
|
|
183
|
-
<a href="/launch/bubble-plugin-specification.html" class="nav-item" data-tooltip="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers..."><i class="fas fa-file-alt"></i> Bubble Plugin Specification</a>
|
|
184
|
-
<a href="/launch/go-to-market-strategy.html" class="nav-item" data-tooltip="Go-to-Market Strategy & Product Launch Plan."><i class="fas fa-file-alt"></i> Go To Market Strategy</a>
|
|
185
|
-
<a href="/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="fas fa-file-alt"></i> Launch Announcements</a></div></div>
|
|
186
209
|
</nav>
|
|
187
210
|
<div class="resize-handle"></div>
|
|
188
211
|
</aside>
|
|
@@ -442,6 +465,7 @@ docBuilder.build({
|
|
|
442
465
|
};
|
|
443
466
|
</script>
|
|
444
467
|
<script src="/js/main.js"></script>
|
|
445
|
-
|
|
468
|
+
<script src="https://unpkg.com/@supabase/supabase-js@2"></script>
|
|
469
|
+
<script src="/js/auth.js"></script>
|
|
446
470
|
</body>
|
|
447
471
|
</html>
|
package/html/auth.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
// Initialize Supabase client
|
|
18
18
|
const { createClient } = supabase;
|
|
19
|
-
const supabaseClient = createClient('https://
|
|
19
|
+
const supabaseClient = createClient('https://placeholder.supabase.co', 'placeholder-key', {
|
|
20
20
|
auth: {
|
|
21
21
|
persistSession: true,
|
|
22
22
|
autoRefreshToken: true,
|
|
@@ -27,11 +27,22 @@
|
|
|
27
27
|
// Check authentication and site access
|
|
28
28
|
async function checkAuth() {
|
|
29
29
|
try {
|
|
30
|
+
// Check if current page is in private directory
|
|
31
|
+
const currentPath = window.location.pathname;
|
|
32
|
+
const isPrivatePage = currentPath.includes('/private/');
|
|
33
|
+
|
|
30
34
|
// Get current user session
|
|
31
35
|
const { data: { user }, error: userError } = await supabaseClient.auth.getUser();
|
|
32
36
|
|
|
33
37
|
if (userError || !user) {
|
|
34
|
-
|
|
38
|
+
// Only redirect if we're on a private page
|
|
39
|
+
if (isPrivatePage) {
|
|
40
|
+
redirectToLogin();
|
|
41
|
+
} else {
|
|
42
|
+
// Public page, just show it
|
|
43
|
+
document.body.classList.add('authenticated'); // Use same class to show body
|
|
44
|
+
updateAuthButton(false);
|
|
45
|
+
}
|
|
35
46
|
return;
|
|
36
47
|
}
|
|
37
48
|
|
|
@@ -40,21 +51,34 @@
|
|
|
40
51
|
.from('docbuilder_access')
|
|
41
52
|
.select('*')
|
|
42
53
|
.eq('user_id', user.id)
|
|
43
|
-
.eq('site_id', '
|
|
54
|
+
.eq('site_id', 'placeholder-site-id')
|
|
44
55
|
.single();
|
|
45
56
|
|
|
46
57
|
if (accessError || !access) {
|
|
47
|
-
|
|
58
|
+
if (isPrivatePage) {
|
|
59
|
+
showAccessDenied();
|
|
60
|
+
} else {
|
|
61
|
+
// Public page, just show it
|
|
62
|
+
document.body.classList.add('authenticated');
|
|
63
|
+
updateAuthButton(false);
|
|
64
|
+
}
|
|
48
65
|
return;
|
|
49
66
|
}
|
|
50
67
|
|
|
51
68
|
// User is authenticated and has access
|
|
52
69
|
console.log('User authenticated and authorized');
|
|
53
70
|
document.body.classList.add('authenticated');
|
|
71
|
+
updateAuthButton(true);
|
|
54
72
|
|
|
55
73
|
} catch (error) {
|
|
56
74
|
console.error('Auth check failed:', error);
|
|
57
|
-
|
|
75
|
+
if (window.location.pathname.includes('/private/')) {
|
|
76
|
+
redirectToLogin();
|
|
77
|
+
} else {
|
|
78
|
+
// Public page, show it anyway
|
|
79
|
+
document.body.classList.add('authenticated');
|
|
80
|
+
updateAuthButton(false);
|
|
81
|
+
}
|
|
58
82
|
}
|
|
59
83
|
}
|
|
60
84
|
|
|
@@ -79,16 +103,41 @@
|
|
|
79
103
|
`;
|
|
80
104
|
}
|
|
81
105
|
|
|
82
|
-
//
|
|
106
|
+
// Function to update auth button
|
|
107
|
+
function updateAuthButton(isAuthenticated) {
|
|
108
|
+
const authBtn = document.querySelector('.auth-btn');
|
|
109
|
+
if (authBtn) {
|
|
110
|
+
const icon = authBtn.querySelector('i');
|
|
111
|
+
if (icon) {
|
|
112
|
+
if (isAuthenticated) {
|
|
113
|
+
icon.className = 'fas fa-sign-out-alt';
|
|
114
|
+
authBtn.title = 'Logout';
|
|
115
|
+
authBtn.href = '/logout.html';
|
|
116
|
+
} else {
|
|
117
|
+
icon.className = 'fas fa-sign-in-alt';
|
|
118
|
+
authBtn.title = 'Login';
|
|
119
|
+
authBtn.href = '/login.html';
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// Add auth button functionality
|
|
83
126
|
document.addEventListener('DOMContentLoaded', function() {
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
await supabaseClient.auth.
|
|
89
|
-
|
|
127
|
+
const authBtn = document.querySelector('.auth-btn');
|
|
128
|
+
if (authBtn) {
|
|
129
|
+
authBtn.addEventListener('click', async function(e) {
|
|
130
|
+
// Check if we're logged in
|
|
131
|
+
const { data: { user } } = await supabaseClient.auth.getUser();
|
|
132
|
+
if (user) {
|
|
133
|
+
// Logged in - sign out
|
|
134
|
+
e.preventDefault();
|
|
135
|
+
await supabaseClient.auth.signOut();
|
|
136
|
+
window.location.href = '/logout.html';
|
|
137
|
+
}
|
|
138
|
+
// If not logged in, normal navigation to login page will occur
|
|
90
139
|
});
|
|
91
|
-
}
|
|
140
|
+
}
|
|
92
141
|
});
|
|
93
142
|
|
|
94
143
|
// Run auth check
|
|
@@ -289,7 +289,8 @@ pre code {
|
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
.logout-btn
|
|
292
|
+
.logout-btn,
|
|
293
|
+
.auth-btn {
|
|
293
294
|
background: none;
|
|
294
295
|
border: none;
|
|
295
296
|
font-size: var(--text-lg);
|
|
@@ -312,6 +313,13 @@ pre code {
|
|
|
312
313
|
transform: translateY(-1px);
|
|
313
314
|
}
|
|
314
315
|
|
|
316
|
+
.auth-btn:hover {
|
|
317
|
+
background: var(--color-bg-tertiary);
|
|
318
|
+
opacity: 1;
|
|
319
|
+
color: var(--color-text-primary);
|
|
320
|
+
transform: translateY(-1px);
|
|
321
|
+
}
|
|
322
|
+
|
|
315
323
|
/* Sidebar */
|
|
316
324
|
.sidebar {
|
|
317
325
|
position: relative;
|
|
@@ -46,6 +46,39 @@
|
|
|
46
46
|
<link rel="stylesheet" href="/css/notion-style.css">
|
|
47
47
|
|
|
48
48
|
|
|
49
|
+
<!-- Hide content until auth check -->
|
|
50
|
+
<style>
|
|
51
|
+
body {
|
|
52
|
+
visibility: hidden;
|
|
53
|
+
opacity: 0;
|
|
54
|
+
transition: opacity 0.3s ease;
|
|
55
|
+
}
|
|
56
|
+
body.authenticated {
|
|
57
|
+
visibility: visible;
|
|
58
|
+
opacity: 1;
|
|
59
|
+
}
|
|
60
|
+
/* Show login/logout pages immediately */
|
|
61
|
+
body.auth-page {
|
|
62
|
+
visibility: visible;
|
|
63
|
+
opacity: 1;
|
|
64
|
+
}
|
|
65
|
+
/* Style auth button consistently */
|
|
66
|
+
.auth-btn {
|
|
67
|
+
background: none;
|
|
68
|
+
border: none;
|
|
69
|
+
color: var(--text-secondary);
|
|
70
|
+
cursor: pointer;
|
|
71
|
+
padding: 0.5rem;
|
|
72
|
+
border-radius: 0.5rem;
|
|
73
|
+
transition: all 0.2s;
|
|
74
|
+
font-size: 1.1rem;
|
|
75
|
+
}
|
|
76
|
+
.auth-btn:hover {
|
|
77
|
+
background: var(--bg-secondary);
|
|
78
|
+
color: var(--text-primary);
|
|
79
|
+
}
|
|
80
|
+
</style>
|
|
81
|
+
|
|
49
82
|
|
|
50
83
|
<!-- Favicon -->
|
|
51
84
|
<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>">
|
|
@@ -65,8 +98,8 @@
|
|
|
65
98
|
"name": "Knowcode Ltd",
|
|
66
99
|
"url": "https://knowcode.tech"
|
|
67
100
|
},
|
|
68
|
-
"datePublished": "2025-07-
|
|
69
|
-
"dateModified": "2025-07-
|
|
101
|
+
"datePublished": "2025-07-26T10:20:52.374Z",
|
|
102
|
+
"dateModified": "2025-07-26T10:20:52.374Z",
|
|
70
103
|
"mainEntityOfPage": {
|
|
71
104
|
"@type": "WebPage",
|
|
72
105
|
"@id": "https://doc-builder-delta.vercel.app/documentation-index.html"
|
|
@@ -99,10 +132,14 @@
|
|
|
99
132
|
|
|
100
133
|
<div class="header-actions">
|
|
101
134
|
<div class="deployment-info">
|
|
102
|
-
<span class="deployment-date" title="Built with doc-builder v1.
|
|
135
|
+
<span class="deployment-date" title="Built with doc-builder v1.8.0">Last updated: Jul 26, 2025, 10:20 AM UTC</span>
|
|
103
136
|
</div>
|
|
104
137
|
|
|
105
138
|
|
|
139
|
+
<a href="../login.html" class="auth-btn" title="Login/Logout">
|
|
140
|
+
<i class="fas fa-sign-in-alt"></i>
|
|
141
|
+
</a>
|
|
142
|
+
|
|
106
143
|
|
|
107
144
|
<button id="theme-toggle" class="theme-toggle" aria-label="Toggle theme">
|
|
108
145
|
<i class="fas fa-moon"></i>
|
|
@@ -158,31 +195,17 @@
|
|
|
158
195
|
</a>
|
|
159
196
|
<div class="nav-content collapsed" id="nav-guides-1">
|
|
160
197
|
<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="fas fa-file-alt"></i> Authentication Default Change</a>
|
|
161
|
-
<a href="/guides/authentication-guide.html" class="nav-item" data-tooltip="
|
|
162
|
-
<a href="/guides/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="fas fa-file-alt"></i> Cache Control Anti Pattern</a>
|
|
198
|
+
<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="fas fa-file-alt"></i> Authentication Guide</a>
|
|
163
199
|
<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="fas fa-file-alt"></i> Claude Workflow Guide</a>
|
|
164
200
|
<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="fas fa-file-alt"></i> Documentation Standards</a>
|
|
165
|
-
<a href="/guides/next-steps-walkthrough.html" class="nav-item" data-tooltip="Now that we've implemented Supabase authentication, let's walk through testing the implementation and preparing for deployment."><i class="fas fa-file-alt"></i> Next Steps Walkthrough</a>
|
|
166
201
|
<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="fas fa-file-alt"></i> Phosphor Icons Guide</a>
|
|
202
|
+
<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="fas fa-file-alt"></i> Private Directory Authentication</a>
|
|
167
203
|
<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="fas fa-file-alt"></i> Public Site Deployment</a>
|
|
168
204
|
<a href="/guides/search-engine-verification-guide.html" class="nav-item" data-tooltip="Search engine verification provides access to powerful webmaster tools:."><i class="fas fa-file-alt"></i> Search Engine Verification Guide</a>
|
|
169
205
|
<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="fas fa-file-alt"></i> Seo Guide</a>
|
|
170
206
|
<a href="/guides/seo-optimization-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes comprehensive SEO (Search Engine Optimization) features that automatically optimize your documentation for search..."><i class="fas fa-file-alt"></i> Seo Optimization Guide</a>
|
|
171
|
-
<a href="/guides/supabase-auth-implementation-plan.html" class="nav-item" data-tooltip="Supabase Auth Implementation Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Implementation Plan</a>
|
|
172
|
-
<a href="/guides/supabase-auth-integration-plan.html" class="nav-item" data-tooltip="Supabase Authentication Integration Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Integration Plan</a>
|
|
173
|
-
<a href="/guides/supabase-auth-setup-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder now supports enterprise-grade authentication through Supabase, replacing the previous insecure basic authentication."><i class="fas fa-file-alt"></i> Supabase Auth Setup Guide</a>
|
|
174
207
|
<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="fas fa-file-alt"></i> Troubleshooting Guide</a>
|
|
175
|
-
<a href="/guides/vercel-deployment-auth-setup.html" class="nav-item" data-tooltip="Vercel Deployment Authentication Setup Guide."><i class="fas fa-file-alt"></i> Vercel Deployment Auth Setup</a>
|
|
176
208
|
<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="fas fa-file-alt"></i> Windows Setup Guide</a></div></div>
|
|
177
|
-
<div class="nav-section" data-level="1">
|
|
178
|
-
<a class="nav-title collapsible" href="/launch/README.html" data-target="nav-launch-1" >
|
|
179
|
-
<i class="fas fa-chevron-right collapse-icon"></i><i class="fas fa-folder"></i> Launch
|
|
180
|
-
</a>
|
|
181
|
-
<div class="nav-content collapsed" id="nav-launch-1">
|
|
182
|
-
<a href="/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="fas fa-file-alt"></i> Launch Overview</a>
|
|
183
|
-
<a href="/launch/bubble-plugin-specification.html" class="nav-item" data-tooltip="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers..."><i class="fas fa-file-alt"></i> Bubble Plugin Specification</a>
|
|
184
|
-
<a href="/launch/go-to-market-strategy.html" class="nav-item" data-tooltip="Go-to-Market Strategy & Product Launch Plan."><i class="fas fa-file-alt"></i> Go To Market Strategy</a>
|
|
185
|
-
<a href="/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="fas fa-file-alt"></i> Launch Announcements</a></div></div>
|
|
186
209
|
</nav>
|
|
187
210
|
<div class="resize-handle"></div>
|
|
188
211
|
</aside>
|
|
@@ -382,6 +405,7 @@ Detailed information...
|
|
|
382
405
|
};
|
|
383
406
|
</script>
|
|
384
407
|
<script src="/js/main.js"></script>
|
|
385
|
-
|
|
408
|
+
<script src="https://unpkg.com/@supabase/supabase-js@2"></script>
|
|
409
|
+
<script src="/js/auth.js"></script>
|
|
386
410
|
</body>
|
|
387
411
|
</html>
|
|
@@ -46,6 +46,39 @@
|
|
|
46
46
|
<link rel="stylesheet" href="/css/notion-style.css">
|
|
47
47
|
|
|
48
48
|
|
|
49
|
+
<!-- Hide content until auth check -->
|
|
50
|
+
<style>
|
|
51
|
+
body {
|
|
52
|
+
visibility: hidden;
|
|
53
|
+
opacity: 0;
|
|
54
|
+
transition: opacity 0.3s ease;
|
|
55
|
+
}
|
|
56
|
+
body.authenticated {
|
|
57
|
+
visibility: visible;
|
|
58
|
+
opacity: 1;
|
|
59
|
+
}
|
|
60
|
+
/* Show login/logout pages immediately */
|
|
61
|
+
body.auth-page {
|
|
62
|
+
visibility: visible;
|
|
63
|
+
opacity: 1;
|
|
64
|
+
}
|
|
65
|
+
/* Style auth button consistently */
|
|
66
|
+
.auth-btn {
|
|
67
|
+
background: none;
|
|
68
|
+
border: none;
|
|
69
|
+
color: var(--text-secondary);
|
|
70
|
+
cursor: pointer;
|
|
71
|
+
padding: 0.5rem;
|
|
72
|
+
border-radius: 0.5rem;
|
|
73
|
+
transition: all 0.2s;
|
|
74
|
+
font-size: 1.1rem;
|
|
75
|
+
}
|
|
76
|
+
.auth-btn:hover {
|
|
77
|
+
background: var(--bg-secondary);
|
|
78
|
+
color: var(--text-primary);
|
|
79
|
+
}
|
|
80
|
+
</style>
|
|
81
|
+
|
|
49
82
|
|
|
50
83
|
<!-- Favicon -->
|
|
51
84
|
<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>">
|
|
@@ -65,8 +98,8 @@
|
|
|
65
98
|
"name": "Knowcode Ltd",
|
|
66
99
|
"url": "https://knowcode.tech"
|
|
67
100
|
},
|
|
68
|
-
"datePublished": "2025-07-
|
|
69
|
-
"dateModified": "2025-07-
|
|
101
|
+
"datePublished": "2025-07-26T10:20:52.377Z",
|
|
102
|
+
"dateModified": "2025-07-26T10:20:52.377Z",
|
|
70
103
|
"mainEntityOfPage": {
|
|
71
104
|
"@type": "WebPage",
|
|
72
105
|
"@id": "https://doc-builder-delta.vercel.app/guides/authentication-default-change.html"
|
|
@@ -105,10 +138,14 @@
|
|
|
105
138
|
|
|
106
139
|
<div class="header-actions">
|
|
107
140
|
<div class="deployment-info">
|
|
108
|
-
<span class="deployment-date" title="Built with doc-builder v1.
|
|
141
|
+
<span class="deployment-date" title="Built with doc-builder v1.8.0">Last updated: Jul 26, 2025, 10:20 AM UTC</span>
|
|
109
142
|
</div>
|
|
110
143
|
|
|
111
144
|
|
|
145
|
+
<a href="../../login.html" class="auth-btn" title="Login/Logout">
|
|
146
|
+
<i class="fas fa-sign-in-alt"></i>
|
|
147
|
+
</a>
|
|
148
|
+
|
|
112
149
|
|
|
113
150
|
<button id="theme-toggle" class="theme-toggle" aria-label="Toggle theme">
|
|
114
151
|
<i class="fas fa-moon"></i>
|
|
@@ -164,31 +201,17 @@
|
|
|
164
201
|
</a>
|
|
165
202
|
<div class="nav-content" id="nav-guides-1">
|
|
166
203
|
<a href="/guides/authentication-default-change.html" class="nav-item active" data-tooltip="Starting from version 1.7.4, @knowcode/doc-builder now defaults to no authentication for all documentation sites."><i class="fas fa-file-alt"></i> Authentication Default Change</a>
|
|
167
|
-
<a href="/guides/authentication-guide.html" class="nav-item" data-tooltip="
|
|
168
|
-
<a href="/guides/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="fas fa-file-alt"></i> Cache Control Anti Pattern</a>
|
|
204
|
+
<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="fas fa-file-alt"></i> Authentication Guide</a>
|
|
169
205
|
<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="fas fa-file-alt"></i> Claude Workflow Guide</a>
|
|
170
206
|
<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="fas fa-file-alt"></i> Documentation Standards</a>
|
|
171
|
-
<a href="/guides/next-steps-walkthrough.html" class="nav-item" data-tooltip="Now that we've implemented Supabase authentication, let's walk through testing the implementation and preparing for deployment."><i class="fas fa-file-alt"></i> Next Steps Walkthrough</a>
|
|
172
207
|
<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="fas fa-file-alt"></i> Phosphor Icons Guide</a>
|
|
208
|
+
<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="fas fa-file-alt"></i> Private Directory Authentication</a>
|
|
173
209
|
<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="fas fa-file-alt"></i> Public Site Deployment</a>
|
|
174
210
|
<a href="/guides/search-engine-verification-guide.html" class="nav-item" data-tooltip="Search engine verification provides access to powerful webmaster tools:."><i class="fas fa-file-alt"></i> Search Engine Verification Guide</a>
|
|
175
211
|
<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="fas fa-file-alt"></i> Seo Guide</a>
|
|
176
212
|
<a href="/guides/seo-optimization-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes comprehensive SEO (Search Engine Optimization) features that automatically optimize your documentation for search..."><i class="fas fa-file-alt"></i> Seo Optimization Guide</a>
|
|
177
|
-
<a href="/guides/supabase-auth-implementation-plan.html" class="nav-item" data-tooltip="Supabase Auth Implementation Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Implementation Plan</a>
|
|
178
|
-
<a href="/guides/supabase-auth-integration-plan.html" class="nav-item" data-tooltip="Supabase Authentication Integration Plan for @knowcode/doc-builder."><i class="fas fa-file-alt"></i> Supabase Auth Integration Plan</a>
|
|
179
|
-
<a href="/guides/supabase-auth-setup-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder now supports enterprise-grade authentication through Supabase, replacing the previous insecure basic authentication."><i class="fas fa-file-alt"></i> Supabase Auth Setup Guide</a>
|
|
180
213
|
<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="fas fa-file-alt"></i> Troubleshooting Guide</a>
|
|
181
|
-
<a href="/guides/vercel-deployment-auth-setup.html" class="nav-item" data-tooltip="Vercel Deployment Authentication Setup Guide."><i class="fas fa-file-alt"></i> Vercel Deployment Auth Setup</a>
|
|
182
214
|
<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="fas fa-file-alt"></i> Windows Setup Guide</a></div></div>
|
|
183
|
-
<div class="nav-section" data-level="1">
|
|
184
|
-
<a class="nav-title collapsible" href="/launch/README.html" data-target="nav-launch-1" >
|
|
185
|
-
<i class="fas fa-chevron-right collapse-icon"></i><i class="fas fa-folder"></i> Launch
|
|
186
|
-
</a>
|
|
187
|
-
<div class="nav-content collapsed" id="nav-launch-1">
|
|
188
|
-
<a href="/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="fas fa-file-alt"></i> Launch Overview</a>
|
|
189
|
-
<a href="/launch/bubble-plugin-specification.html" class="nav-item" data-tooltip="This document outlines the technical specification for creating a Bubble.io plugin that integrates @knowcode/doc-builder, enabling Bubble developers..."><i class="fas fa-file-alt"></i> Bubble Plugin Specification</a>
|
|
190
|
-
<a href="/launch/go-to-market-strategy.html" class="nav-item" data-tooltip="Go-to-Market Strategy & Product Launch Plan."><i class="fas fa-file-alt"></i> Go To Market Strategy</a>
|
|
191
|
-
<a href="/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="fas fa-file-alt"></i> Launch Announcements</a></div></div>
|
|
192
215
|
</nav>
|
|
193
216
|
<div class="resize-handle"></div>
|
|
194
217
|
</aside>
|
|
@@ -297,6 +320,7 @@ module.exports = {
|
|
|
297
320
|
};
|
|
298
321
|
</script>
|
|
299
322
|
<script src="/js/main.js"></script>
|
|
300
|
-
|
|
323
|
+
<script src="https://unpkg.com/@supabase/supabase-js@2"></script>
|
|
324
|
+
<script src="/js/auth.js"></script>
|
|
301
325
|
</body>
|
|
302
326
|
</html>
|