feat: Improve UI layout and navigation

- Increase logo size (48x48 desktop, 56x56 mobile) for better visibility
- Add logo as favicon
- Add logo to mobile header
- Move user menu to navigation bars (sidebar on desktop, bottom bar on mobile)
- Fix desktop chat layout - container structure prevents voice controls cutoff
- Fix mobile bottom bar - use icon-only ActionIcons instead of truncated text buttons
- Hide Create Node/New Conversation buttons on mobile to save header space
- Make fixed header and voice controls work properly with containers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-09 14:43:11 +00:00
parent 0b632a31eb
commit f0284ef813
74 changed files with 6996 additions and 629 deletions

47
pnpm-lock.yaml generated
View File

@@ -47,6 +47,9 @@ importers:
'@tabler/icons-react':
specifier: ^3.35.0
version: 3.35.0(react@19.2.0)
'@xstate/react':
specifier: ^6.0.0
version: 6.0.0(@types/react@19.2.2)(react@19.2.0)(xstate@5.24.0)
ai:
specifier: latest
version: 5.0.89(zod@4.1.12)
@@ -55,7 +58,7 @@ importers:
version: 9.0.2
next:
specifier: latest
version: 16.0.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
version: 16.0.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
openid-client:
specifier: latest
version: 6.8.1
@@ -74,10 +77,16 @@ importers:
umap-js:
specifier: latest
version: 1.4.0
xstate:
specifier: ^5.24.0
version: 5.24.0
zod:
specifier: latest
version: 4.1.12
devDependencies:
'@playwright/test':
specifier: ^1.56.1
version: 1.56.1
'@types/jsonwebtoken':
specifier: latest
version: 9.0.10
@@ -991,6 +1000,11 @@ packages:
'@pinojs/redact@0.4.0':
resolution: {integrity: sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==}
'@playwright/test@1.56.1':
resolution: {integrity: sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==}
engines: {node: '>=18'}
hasBin: true
'@posthog/core@1.5.2':
resolution: {integrity: sha512-iedUP3EnOPPxTA2VaIrsrd29lSZnUV+ZrMnvY56timRVeZAXoYCkmjfIs3KBAsF8OUT5h1GXLSkoQdrV0r31OQ==}
@@ -1285,6 +1299,15 @@ packages:
'@webgpu/types@0.1.66':
resolution: {integrity: sha512-YA2hLrwLpDsRueNDXIMqN9NTzD6bCDkuXbOSe0heS+f8YE8usA6Gbv1prj81pzVHrbaAma7zObnIC+I6/sXJgA==}
'@xstate/react@6.0.0':
resolution: {integrity: sha512-xXlLpFJxqLhhmecAXclBECgk+B4zYSrDTl8hTfPZBogkn82OHKbm9zJxox3Z/YXoOhAQhKFTRLMYGdlbhc6T9A==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
xstate: ^5.20.0
peerDependenciesMeta:
xstate:
optional: true
acorn-jsx@5.3.2:
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
peerDependencies:
@@ -3381,6 +3404,9 @@ packages:
utf-8-validate:
optional: true
xstate@5.24.0:
resolution: {integrity: sha512-h/213ThFfZbOefUWrLc9ZvYggEVBr0jrD2dNxErxNMLQfZRN19v+80TaXFho17hs8Q2E1mULtm/6nv12um0C4A==}
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
@@ -4255,6 +4281,10 @@ snapshots:
'@pinojs/redact@0.4.0': {}
'@playwright/test@1.56.1':
dependencies:
playwright: 1.56.1
'@posthog/core@1.5.2':
dependencies:
cross-spawn: 7.0.6
@@ -4562,6 +4592,16 @@ snapshots:
'@webgpu/types@0.1.66': {}
'@xstate/react@6.0.0(@types/react@19.2.2)(react@19.2.0)(xstate@5.24.0)':
dependencies:
react: 19.2.0
use-isomorphic-layout-effect: 1.2.1(@types/react@19.2.2)(react@19.2.0)
use-sync-external-store: 1.6.0(react@19.2.0)
optionalDependencies:
xstate: 5.24.0
transitivePeerDependencies:
- '@types/react'
acorn-jsx@5.3.2(acorn@8.15.0):
dependencies:
acorn: 8.15.0
@@ -5964,7 +6004,7 @@ snapshots:
natural-compare@1.4.0: {}
next@16.0.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
next@16.0.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
'@next/env': 16.0.1
'@swc/helpers': 0.5.15
@@ -5983,6 +6023,7 @@ snapshots:
'@next/swc-win32-arm64-msvc': 16.0.1
'@next/swc-win32-x64-msvc': 16.0.1
'@opentelemetry/api': 1.9.0
'@playwright/test': 1.56.1
sharp: 0.34.5
transitivePeerDependencies:
- '@babel/core'
@@ -7004,6 +7045,8 @@ snapshots:
bufferutil: 4.0.9
utf-8-validate: 6.0.5
xstate@5.24.0: {}
yallist@3.1.1: {}
yocto-queue@0.1.0: {}