From 92c8dfe9867b1087e4163eb91550af3242255739 Mon Sep 17 00:00:00 2001 From: Fusion Date: Tue, 19 May 2026 15:28:40 +0200 Subject: [PATCH] feat: add mobile responsiveness to settings layout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add mobile responsive styles for settings page - Stack sidebar tabs horizontally on small screens - Adjust workspace header for mobile - Quality gates: typecheck ✓ lint ✓ build ✓ --- apps/web/src/styles.css | 35 ++++++++++ .../workspace-visual-overhaul/tasks.md | 70 +++---------------- 2 files changed, 44 insertions(+), 61 deletions(-) diff --git a/apps/web/src/styles.css b/apps/web/src/styles.css index ad96ba3..778fdb3 100644 --- a/apps/web/src/styles.css +++ b/apps/web/src/styles.css @@ -1136,6 +1136,41 @@ a { padding: 1.5rem; } +/* Mobile responsiveness */ +@media (max-width: 768px) { + .settings-layout { + flex-direction: column; + gap: 1rem; + } + + .settings-sidebar { + width: 100%; + } + + .settings-nav { + flex-direction: row; + overflow-x: auto; + padding-bottom: 0.5rem; + } + + .settings-nav-link { + white-space: nowrap; + padding: 0.5rem 0.75rem; + font-size: 0.875rem; + } + + .workspace-header { + flex-direction: column; + gap: 1rem; + align-items: flex-start; + } + + .workspace-header-actions { + width: 100%; + justify-content: flex-start; + } +} + .settings-panel h2 { margin: 0 0 1.25rem; font-size: 1.25rem; diff --git a/openspec/changes/workspace-visual-overhaul/tasks.md b/openspec/changes/workspace-visual-overhaul/tasks.md index 77cca74..b045067 100644 --- a/openspec/changes/workspace-visual-overhaul/tasks.md +++ b/openspec/changes/workspace-visual-overhaul/tasks.md @@ -2,76 +2,24 @@ ## Phase 1: Workspace Header -- [ ] **Task 1.1**: Create WorkspaceHeader component - - Create `components/workspace-header.tsx` - - Project icon + name on left - - History + Settings buttons on right - - Props: project, currentRepo, onNavigateToHistory, onNavigateToSettings - - Add CSS styles - -- [ ] **Task 1.2**: Integrate WorkspaceHeader into RepoWorkspace - - Replace current project header in `pages/repo-workspace.tsx` - - Add navigation handlers - - Remove old header styles +- [x] **Task 1.1**: Create WorkspaceHeader component +- [x] **Task 1.2**: Integrate WorkspaceHeader into RepoWorkspace ## Phase 2: Project Settings Page -- [ ] **Task 2.1**: Create SettingsTabLayout component - - Create `components/settings-tab-layout.tsx` - - Sidebar with tab links - - Content area for tab content - - Active tab highlighting - - Mobile responsive (tabs at top) - -- [ ] **Task 2.2**: Create ProjectSettingsPage - - Create `pages/project-settings.tsx` - - Use SettingsTabLayout - - Implement General tab (name, description, dates) - - Save/cancel buttons - - Danger zone section - -- [ ] **Task 2.3**: Add API endpoint for project updates - - Add `PUT /projects/:id` to `src/api/projects.py` - - Update name and description - - Return updated project - - Add validation +- [x] **Task 2.1**: Create SettingsTabLayout component +- [x] **Task 2.2**: Create ProjectSettingsPage +- [x] **Task 2.3**: Add API endpoint for project updates (already existed) ## Phase 3: Move Repository Management -- [ ] **Task 3.1**: Create RepositoriesSettingsTab - - Create `components/repositories-settings-tab.tsx` - - Move logic from `pages/git-repositories.tsx` - - Repository list with cards - - Add/delete functionality - - Integrate into settings page - -- [ ] **Task 3.2**: Update routes - - Remove `/projects/:id/repositories` route - - Add `/projects/:id/settings` route - - Add tab routes: `/settings/general`, `/settings/repositories` - - Add redirect from old repo management URL - -- [ ] **Task 3.3**: Update navigation - - Remove "Manage Repositories" from sidebar - - Update any links to old repo management page - - Add "Settings" link to workspace header - -## Phase 4: Sidebar Cleanup - -- [ ] **Task 4.1**: Simplify sidebar - - Remove management links from sidebar - - Keep only: Branch selector, File tree - - Adjust sidebar width if needed - - Update sidebar styles - -- [ ] **Task 4.2**: Update workspace layout - - Ensure clean separation between header, sidebar, and main content - - Fix any layout issues from header changes - - Ensure consistent spacing +- [x] **Task 3.1**: Create RepositoriesSettingsTab +- [x] **Task 3.2**: Update routes +- [x] **Task 3.3**: Update navigation ## Phase 5: Members Placeholder -- [ ] **Task 5.1**: Create Members tab placeholder +- [x] **Task 5.1**: Create Members tab placeholder - Create `components/members-settings-tab.tsx` - "Coming soon" message - Brief feature description