Frontend Dev Project Management | UI Work
Manage frontend complexity: components, design handoff, responsive breakpoints, and animations. GitScrum organizes UI work and design collaboration.
8 min read
Frontend development involves UI complexity, rapid iteration, and close design collaboration. GitScrum helps teams organize frontend work and deliver polished user experiences.
Frontend Task Structure
Component vs Feature Work
FRONTEND WORK TYPES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β COMPONENT WORK: β
β Building reusable UI pieces β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β UI-100: Create Button Component ββ
β β ββ
β β Variants: ββ
β β β Primary, Secondary, Ghost ββ
β β β Small, Medium, Large sizes ββ
β β β Loading state ββ
β β β Disabled state ββ
β β β Icon support (left, right) ββ
β β ββ
β β Requirements: ββ
β β β Accessible (keyboard, screen reader) ββ
β β β Storybook stories ββ
β β β Unit tests ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FEATURE WORK: β
β Implementing user-facing functionality β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β FE-200: User Profile Settings Page ββ
β β ββ
β β Uses components: ββ
β β Button, Input, Avatar, Card ββ
β β ββ
β β Implementation: ββ
β β β Profile form layout ββ
β β β Avatar upload with preview ββ
β β β Form validation ββ
β β β API integration ββ
β β β Success/error states ββ
β β β Responsive layout ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DEPENDENCIES: β
β Components should be built BEFORE features that need them β
β β
β Sprint 1: UI-100 (Button), UI-101 (Input), UI-102 (Card) β
β Sprint 2: FE-200 (Settings Page using those components) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Design Integration
DESIGN HANDOFF IN TASKS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TASK WITH DESIGN SPECS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β FE-300: Dashboard Header ββ
β β ββ
β β DESIGN: ββ
β β Figma: [link to design] ββ
β β Prototype: [link to interactive prototype] ββ
β β ββ
β β BREAKPOINTS: ββ
β β Desktop: 1200px+ (full navigation) ββ
β β Tablet: 768-1199px (collapsed nav) ββ
β β Mobile: < 768px (hamburger menu) ββ
β β ββ
β β STATES: ββ
β β β Default ββ
β β β User menu open ββ
β β β Search expanded ββ
β β β Notification badge (has notifications) ββ
β β β Scrolled (sticky with shadow) ββ
β β ββ
β β ANIMATIONS: ββ
β β Menu open: 200ms ease-out ββ
β β Search expand: 150ms ease-in-out ββ
β β ββ
β β ACCESSIBILITY: ββ
β β β Skip to main content link ββ
β β β Keyboard navigation ββ
β β β ARIA landmarks ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β GOOD HANDOFF INCLUDES: β
β β
All visual states β
β β
Responsive behavior β
β β
Interaction details β
β β
Spacing and sizing tokens β
β β
Animation timing β
β β
Error states β
β β
Empty states β
β β
Loading states β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Estimation Factors
Frontend Complexity
FRONTEND ESTIMATION FACTORS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BASE IMPLEMENTATION: β
β Basic layout and structure β
β β
β MULTIPLIERS: β
β β
β RESPONSIVE: β
β Desktop only: 1x β
β Desktop + Mobile: 1.5x β
β Desktop + Tablet + Mobile: 2x β
β β
β BROWSER SUPPORT: β
β Modern only: 1x β
β + Safari quirks: 1.2x β
β + Legacy browsers: 1.5x β
β β
β INTERACTIONS: β
β Static: 1x β
β Basic hover/click: 1.2x β
β Complex animations: 1.5-2x β
β Drag and drop: 2x β
β β
β STATE MANAGEMENT: β
β Simple local state: 1x β
β Complex forms: 1.5x β
β Real-time updates: 2x β
β Offline support: 2.5x β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β OFTEN UNDERESTIMATED: β
β β
β β’ Edge cases (empty states, errors, loading) β
β β’ Polish (animations, micro-interactions) β
β β’ Cross-browser testing β
β β’ Accessibility β
β β’ Performance optimization β
β β’ Documentation (Storybook, etc.) β
β β
β RULE OF THUMB: β
β If it "looks simple," add 30% for hidden complexity β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Storybook and Documentation
Component Documentation
COMPONENT DOCUMENTATION WORKFLOW:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β STORYBOOK REQUIREMENT: β
β β
β Every component needs: β
β β Default story (primary use case) β
β β All variants documented β
β β Interactive controls β
β β Usage documentation β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β TASK INCLUDES STORYBOOK: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β UI-150: Create Modal Component ββ
β β ββ
β β Implementation: ββ
β β β Modal component ββ
β β β Overlay with click-outside close ββ
β β β Focus trap ββ
β β β Escape key closes ββ
β β ββ
β β Storybook: ββ
β β β Basic modal story ββ
β β β Sizes: small, medium, large ββ
β β β With form content ββ
β β β With scrolling content ββ
β β β Controlled open/close ββ
β β ββ
β β Tests: ββ
β β β Opens/closes correctly ββ
β β β Focus management ββ
β β β Escape key behavior ββ
β β β Accessibility (role, aria) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DEFINITION OF DONE FOR COMPONENTS: β
β β
β β Component works as designed β
β β All variants implemented β
β β Storybook stories complete β
β β Accessible β
β β Unit tested β
β β Responsive (if applicable) β
β β Documented β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Design System Work
Design System Development
DESIGN SYSTEM ORGANIZATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DESIGN SYSTEM COMPONENTS: β
β β
β FOUNDATIONS (Priority 1): β
β β’ Colors / Themes β
β β’ Typography β
β β’ Spacing β
β β’ Icons β
β β
β ATOMS (Priority 2): β
β β’ Button β
β β’ Input β
β β’ Checkbox β
β β’ Radio β
β β’ Badge β
β β
β MOLECULES (Priority 3): β
β β’ Form Field (label + input + error) β
β β’ Search Bar β
β β’ Dropdown β
β β’ Toast β
β β
β ORGANISMS (Priority 4): β
β β’ Modal β
β β’ Card β
β β’ Table β
β β’ Navigation β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β GITSCRUM EPIC: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β DS-001: Design System Phase 1 ββ
β β ββ
β β Goal: Core components for new features ββ
β β ββ
β β Foundations: ββ
β β β DS-010: Theme tokens ββ
β β β DS-011: Typography scale ββ
β β β DS-012: Icon library ββ
β β ββ
β β Atoms: ββ
β β β DS-020: Button ββ
β β β DS-021: Input ββ
β β β DS-022: Checkbox / Radio ββ
β β ββ
β β Molecules: ββ
β β β DS-030: Form Field ββ
β β β DS-031: Dropdown ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Performance Work
Frontend Performance
FRONTEND PERFORMANCE TASKS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PERFORMANCE BUDGET: β
β β
β Bundle size: < 200KB gzipped β
β First contentful paint: < 1.5s β
β Time to interactive: < 3s β
β Largest contentful paint: < 2.5s β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β PERFORMANCE TASK: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β PERF-100: Reduce Initial Bundle Size ββ
β β ββ
β β Current: 450KB gzipped ββ
β β Target: < 200KB gzipped ββ
β β ββ
β β Analysis: ββ
β β β Run bundle analyzer ββ
β β β Identify large dependencies ββ
β β β Find code-splitting opportunities ββ
β β ββ
β β Optimizations: ββ
β β β Lazy load routes ββ
β β β Replace moment with date-fns ββ
β β β Tree-shake lodash ββ
β β β Dynamic import for charts ββ
β β ββ
β β Validation: ββ
β β β Measure before/after ββ
β β β Test on slow connection ββ
β β β Add bundle size CI check ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PERFORMANCE IN DEFINITION OF DONE: β
β β
β β No bundle size regression β
β β Lighthouse score maintained β
β β Images optimized β
β β No layout shifts β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ