feat(frontend): complete UI redesign with systematic cleanup#10
Merged
sylvanding merged 6 commits intomainfrom Mar 18, 2026
Merged
feat(frontend): complete UI redesign with systematic cleanup#10sylvanding merged 6 commits intomainfrom
sylvanding merged 6 commits intomainfrom
Conversation
Implement comprehensive frontend redesign following Figma design specs: - Design tokens: OKLCH purple/violet color scheme for light/dark modes - Layout: DualSidebar (icon rail + expandable text panel) + TopBar + PageLayout - Components: DataTable, Pagination, StatsCard, ProgressBar, StatsGrid - Pages: Rewrite all 8 pages (KB, Papers, Settings, Discovery, Tasks, Writing, PDF, History) - API layer: Align all services with backend (POST body for search, batch delete, pagination, typed query keys) - Replace A2UI SDK with custom components, react-force-graph with D3.js submodules - Bundle size: -127KB (gzip -41KB) from dependency removals Made-with: Cursor
Fix sidebar duplication by integrating ChatHistorySidebar into DualSidebar, fix 3 API type mismatches (dedup keep_existing→keep_old, pipeline file_paths→ pdf_paths, ResolvedConflict shape), centralize API URLs via api-config.ts, remove dead code and unused deps, add missing service methods, improve type safety. Made-with: Cursor
…ture Reflect new design system (purple/blue primary, OKLCH tokens), component conventions (PageLayout, DataTable, DualSidebar), API URL centralization (apiUrl/wsUrl), and CSS transitions preference over framer-motion. Made-with: Cursor
Rewrite DualSidebar as expandable icon rail (no separate panel column), auto-collapse on project routes, add toggle button above language icon. Fix filename overflow in AddPaperDialog with min-w-0 on list items. Update Playwright tests for port 3001 and new UI selectors — 26/26 pass. Made-with: Cursor
Show conversation list in DualSidebar when expanded, with search and new chat button. Highlight current conversation on playground routes. Unify NavItem component for consistent icon sizing across states. Widen sidebar to w-56 for better title readability. Fix Playwright test selector to avoid matching sidebar "New Chat" button. Made-with: Cursor
Fix relative link paths in d3-citation-graph solution doc (docs/plans
→ ../plans). Update WritingPage test to use getAllByRole('tab') instead
of getAllByRole('button') since shadcn Tabs renders with role="tab".
Made-with: Cursor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
UI Redesign (Phase 1-6)
Sidebar
Systematic Cleanup
keep_existing→keep_old、Pipelinefile_paths→pdf_paths、ResolvedConflict 类型对齐api-config.ts,替换 7 处硬编码路径;补全 5 个缺失的 API service 方法as unknown as/as any转换Commits (5)
feat(frontend): complete UI redesign with design system first approachrefactor(frontend): systematic cleanup after redesigndocs(config): update frontend rules and skill for redesigned architecturefix(frontend): simplify DualSidebar and fix text overflowfeat(frontend): integrate chat history into sidebar expanded panelTest plan
npx tsc --noEmit零错误npm run build构建成功Documentation
docs/solutions/integration-issues/2026-03-19-frontend-redesign-systematic-cleanup.mddocs/brainstorms/2026-03-19-sidebar-simplification-brainstorm.md