Files
Fusion 2b5331a1a0 feat: implement responsive spacing improvements
- Add CSS custom properties for spacing scale (4px base), breakpoints, and fluid typography
- Create layout utilities: Container, Stack, Row, Grid
- Update AppShell with responsive mobile navigation
- Update card grid with responsive columns
- Update dialogs with viewport-aware sizing and mobile fullscreen
- Update workspace layout for mobile stacking
- Ensure minimum 44px touch targets for buttons
- Add table-responsive and text truncation utilities
- Update page headers for mobile stacking

Quality gates: typecheck ✓, lint ✓, build ✓
2026-05-19 19:50:36 +02:00

3.7 KiB

Universal Icon System - Tasks

Phase 1: Setup

  • Task 1.1: Install Phosphor Icons

    • npm install @phosphor-icons/react
    • Add to package.json dependencies
  • Task 1.2: Create Icon component

    • Create components/icon.tsx
    • Implement size variants (sm, md, lg, xl)
    • Support color inheritance and explicit colors
    • Add accessibility props (aria-label, aria-hidden)
  • Task 1.3: Create icon registry

    • Create utils/icons.ts
    • Map logical names to Phosphor icon components
    • Group by category (navigation, actions, status, git, files)
    • Export TypeScript types for icon names

Phase 2: Replace Raw Unicode Symbols

  • Task 2.1: Replace validation icons in git-repositories.tsx

    • Icon name="check"
    • Icon name="warning"
    • Icon name="x"
  • Task 2.2: Replace git toolbar icons in git-toolbar.tsx

    • Icon name="dot"
    • Icon name="arrow-down"
    • Icon name="question"
  • Task 2.3: Scan and replace all other Unicode symbols

    • Search for remaining Unicode symbols across all TSX files
    • Replace with appropriate Icon components

Phase 3: Update Navigation

  • Task 3.1: Update app-shell.tsx navigation
    • Replace text-only nav items with icon + text
    • Use navigation icons (dashboard, projects, settings, etc.)
    • Maintain current layout and styling

Phase 4: Update Action Buttons

  • Task 4.1: Update button components

    • Add icon support to Button component
    • Update all primary/secondary buttons with relevant icons
    • Ensure proper spacing between icon and text
  • Task 4.2: Update form actions

    • Save buttons: Icon name="save"
    • Cancel buttons: Icon name="x"
    • Delete buttons: Icon name="trash"
    • Edit buttons: Icon name="pencil"

Phase 5: Update Status Indicators

  • Task 5.1: Replace status badges
    • Success states: Icon name="check" + green color
    • Error states: Icon name="x" + red color
    • Warning states: Icon name="warning" + yellow color
    • Loading states: Icon name="spinner" + animation

Phase 6: Update Git Components

  • Task 6.1: Update GitToolbar

    • Branch icon: Icon name="git-branch"
    • Fetch icon: Icon name="arrows-clockwise"
    • Pull icon: Icon name="arrow-down"
    • Push icon: Icon name="arrow-up"
    • Commit icon: Icon name="git-commit"
  • Task 6.2: Update GitHistoryPage

    • History icon: Icon name="clock-counter-clockwise"
    • Merge icon: Icon name="git-merge"
    • Branch selector icon: Icon name="git-branch"

Phase 7: Update File Components

  • Task 7.1: Update file tree icons

    • Folder icon: Icon name="folder"
    • File icon: Icon name="file"
    • Code file icon: Icon name="code"
    • Binary file icon: Icon name="file-binary"
  • Task 7.2: Update FileEditor toolbar

    • Edit icon: Icon name="pencil"
    • Save icon: Icon name="floppy-disk"
    • Copy icon: Icon name="copy"

Phase 8: CSS and Styling

  • Task 8.1: Add icon CSS classes

    • Create .icon base class
    • Size variants: .icon-sm, .icon-md, .icon-lg, .icon-xl
    • Alignment utilities for icon + text combos
  • Task 8.2: Ensure consistent spacing

    • Icon margins in buttons
    • Icon alignment with text
    • Icon padding in navigation items

Phase 9: Quality Gates

  • Task 9.1: TypeScript checks

    • npm run typecheck
    • Fix any type errors
  • Task 9.2: Lint checks

    • npm run lint
    • Fix any linting issues
  • Task 9.3: Build verification

    • npm run build
    • Verify bundle size impact
  • Task 9.4: Visual verification

    • Check all pages for icon rendering
    • Verify no missing icons or broken layouts
    • Check dark/light theme compatibility