this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add UI support for new project statuses

- ready_to_ship: Rocket icon, teal color
- ignore: EyeOff icon, slate color

Updates stale projects filter to exclude these new statuses.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

alice b85cd6a2 edcca696

+5 -3
+5 -3
src/web/app/components/ProjectList.tsx
··· 1 1 import React, { useState } from 'react'; 2 - import { Folder, Ship, Construction, Archive, Beaker, Zap, Clock, ChevronDown } from 'lucide-react'; 2 + import { Folder, Ship, Construction, Archive, Beaker, Zap, Clock, ChevronDown, Rocket, EyeOff } from 'lucide-react'; 3 3 import { useProjects, useUpdateProjectStatus } from '../hooks/useProjects'; 4 4 import type { ProjectStatus, ProjectListItem } from '../../../types'; 5 5 6 6 const STATUS_CONFIG: Record<ProjectStatus, { icon: React.ElementType; color: string; bgColor: string; label: string }> = { 7 7 shipped: { icon: Ship, color: 'text-green-600', bgColor: 'bg-green-50', label: 'Shipped' }, 8 8 in_progress: { icon: Construction, color: 'text-blue-600', bgColor: 'bg-blue-50', label: 'In Progress' }, 9 + ready_to_ship: { icon: Rocket, color: 'text-teal-600', bgColor: 'bg-teal-50', label: 'Ready to Ship' }, 9 10 abandoned: { icon: Archive, color: 'text-gray-500', bgColor: 'bg-gray-100', label: 'Abandoned' }, 11 + ignore: { icon: EyeOff, color: 'text-slate-400', bgColor: 'bg-slate-100', label: 'Ignore' }, 10 12 one_off: { icon: Zap, color: 'text-amber-600', bgColor: 'bg-amber-50', label: 'One-off' }, 11 13 experiment: { icon: Beaker, color: 'text-purple-600', bgColor: 'bg-purple-50', label: 'Experiment' }, 12 14 }; 13 15 14 - const ALL_STATUSES: ProjectStatus[] = ['shipped', 'in_progress', 'abandoned', 'one_off', 'experiment']; 16 + const ALL_STATUSES: ProjectStatus[] = ['shipped', 'in_progress', 'ready_to_ship', 'abandoned', 'ignore', 'one_off', 'experiment']; 15 17 16 18 function StatusBadge({ 17 19 status, ··· 166 168 </div> 167 169 168 170 {/* Stale projects callout */} 169 - {staleCount > 0 && filter !== 'shipped' && filter !== 'abandoned' && filter !== 'one_off' && filter !== 'experiment' && ( 171 + {staleCount > 0 && filter !== 'shipped' && filter !== 'ready_to_ship' && filter !== 'abandoned' && filter !== 'ignore' && filter !== 'one_off' && filter !== 'experiment' && ( 170 172 <div className="mb-4 p-3 bg-amber-50 border border-amber-200 rounded-lg text-sm text-amber-800"> 171 173 <strong>{staleCount} project{staleCount > 1 ? 's' : ''}</strong> marked "In Progress" but untouched for 30+ days. 172 174 </div>