diff --git a/frontend/app.js b/frontend/app.js index bcecb0f..4635494 100644 --- a/frontend/app.js +++ b/frontend/app.js @@ -36,6 +36,7 @@ function noteApp() { appName: 'NoteDiscovery', appTagline: 'Your Self-Hosted Knowledge Base', appVersion: '0.0.0', + authEnabled: false, notes: [], currentNote: '', currentNoteName: '', @@ -60,6 +61,9 @@ function noteApp() { currentTheme: 'light', availableThemes: [], + // Icon rail / panel state + activePanel: 'files', // 'files', 'search', 'tags', 'settings' + // Folder state folderTree: [], allFolders: [], @@ -462,6 +466,7 @@ function noteApp() { this.appName = config.name; this.appTagline = config.tagline; this.appVersion = config.version || '0.0.0'; + this.authEnabled = config.authentication?.enabled || false; } catch (error) { console.error('Failed to load config:', error); } diff --git a/frontend/index.html b/frontend/index.html index 8d9c72d..5c99234 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -519,6 +519,150 @@ opacity: 0.4; } + /* Icon Rail (VS Code-style navigation) */ + .icon-rail { + width: 44px; + min-width: 44px; + display: flex; + flex-direction: column; + align-items: center; + padding: 8px 0; + background-color: var(--bg-tertiary); + border-right: 1px solid var(--border-primary); + } + + .icon-rail-btn { + width: 36px; + height: 36px; + display: flex; + align-items: center; + justify-content: center; + border-radius: 8px; + margin-bottom: 4px; + cursor: pointer; + transition: background-color 0.15s ease, color 0.15s ease; + color: var(--text-tertiary); + background: transparent; + border: none; + } + + .icon-rail-btn:hover { + background-color: var(--bg-hover); + color: var(--text-primary); + } + + .icon-rail-btn.active { + background-color: var(--accent-light); + color: var(--accent-primary); + } + + .icon-rail-btn svg { + width: 20px; + height: 20px; + } + + .icon-rail-spacer { + flex: 1; + } + + .icon-rail-logo { + width: 28px; + height: 28px; + margin-bottom: 8px; + cursor: pointer; + opacity: 0.9; + transition: opacity 0.15s ease; + } + + .icon-rail-logo:hover { + opacity: 1; + } + + /* Sidebar panel (content area next to icon rail) */ + .sidebar-panel { + flex: 1; + display: flex; + flex-direction: column; + min-width: 0; + overflow: hidden; + } + + .sidebar-panel-header { + padding: 12px; + border-bottom: 1px solid var(--border-primary); + font-size: 11px; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.5px; + color: var(--text-tertiary); + } + + .sidebar-panel-content { + flex: 1; + overflow-y: auto; + overflow-x: hidden; + } + + /* Mobile bottom tabs */ + @media (max-width: 768px) { + .icon-rail { + display: none; + } + + .mobile-bottom-tabs { + display: flex !important; + position: fixed; + bottom: 0; + left: 0; + right: 0; + height: 56px; + background-color: var(--bg-secondary); + border-top: 1px solid var(--border-primary); + z-index: 1001; + padding-bottom: env(safe-area-inset-bottom); + } + + .mobile-bottom-tab { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 2px; + color: var(--text-tertiary); + background: none; + border: none; + cursor: pointer; + transition: color 0.15s ease, background-color 0.15s ease; + min-width: 44px; + min-height: 44px; + } + + .mobile-bottom-tab:active { + background-color: var(--bg-hover); + } + + .mobile-bottom-tab.active { + color: var(--accent-primary); + } + + .mobile-bottom-tab svg { + width: 22px; + height: 22px; + } + + .mobile-bottom-tab span { + font-size: 10px; + } + + } + + @media (min-width: 769px) { + .mobile-bottom-tabs { + display: none !important; + } + } + /* Scrollbar styling */ .custom-scrollbar::-webkit-scrollbar, .editor-textarea::-webkit-scrollbar, @@ -817,252 +961,132 @@
- +
- -
- - -
- - ๐Ÿ”’ - Logout - -
-
- - -
-
- - - + + +
+ + + - -
- -
- - -
-
-
- - -
- -
-
- - - - Tags - -
- - - -
- - -
- -
- -
- - -
- -
- - -
- No tags found. Add tags to notes using YAML frontmatter: -
-
-
- - -
+ + +
+ + + + + +
- -
- + + - -
- - -
- -
- -
+ - -
- notes - ยท - - ยท - - Website - + +
+ +
+ Search +
+ + +
+
+ + + + + +
+ + +
+ +
+ + +
+
+
+ + +
+ + + +
+ + + +
+ +
+ Tags + +
+ + +
+ +
+ + +
+ +
+ + +
+ + + +
+
+ + + + + +
+
@@ -2023,6 +2245,82 @@
+ + + diff --git a/release.ps1 b/release.ps1 index 6425b6c..22e8742 100644 --- a/release.ps1 +++ b/release.ps1 @@ -146,3 +146,8 @@ git push origin "v$Version" Write-Host "`nRelease $Version completed successfully!" -ForegroundColor Green Write-Host "Tag: v$Version" -ForegroundColor Cyan +# Open GitHub Actions page to monitor build status +$actionsUrl = "https://github.com/gamosoft/NoteDiscovery/actions" +Write-Host "`nOpening GitHub Actions to monitor build status..." -ForegroundColor Yellow +Start-Process $actionsUrl +