| name | ai-organizer-ui-consolidation |
| description | Build a unified, ADHD-friendly web UI that consolidates 70+ CLI tools into a beautiful liquid glass interface for the AI File Organizer. Use when creating the complete frontend application that replaces all terminal interactions with a macOS-inspired dashboard for file organization, search, VEO prompts, and system management. |
AI Organizer UI Consolidation
Overview
Transform the AI File Organizer from 70+ scattered CLI tools (31,415 lines of Python) into a unified, beautiful web application that eliminates all terminal interactions. The user (Ryan) has ADHD and cannot use the current system due to overwhelming context-switching between commands. This consolidation is mission-critical.
Success Metric: Ryan can organize files, search content, manage VEO prompts, and control system settings without ever opening the terminal.
Timeline: 4 weeks (28 days)
Tech Stack: React 18 + Vite + Tailwind CSS + ShadCN UI + TanStack Query + Framer Motion
When to Use This Skill
Use this skill when:
- Building the complete frontend UI for the AI File Organizer
- Creating a unified dashboard that replaces CLI workflows
- Implementing ADHD-friendly interaction patterns
- Designing liquid glass (frosted glass) aesthetics
- Consolidating multiple backend Python services into REST APIs
- Creating file organization interfaces with drag-and-drop
- Building rollback/undo systems for file operations
- Integrating computer vision (Gemini) and audio analysis results into UI
Design Philosophy
Liquid Glass Aesthetic (macOS Big Sur/Monterey inspired)
/* Core Design Tokens */
--glass-bg: rgba(30, 30, 46, 0.7);
--glass-border: rgba(255, 255, 255, 0.1);
--glass-blur: blur(12px);
--accent-blue: #0A84FF;
--accent-green: #30D158;
--accent-yellow: #FFD60A;
--accent-red: #FF453A;
--accent-purple: #BF5AF2;
Key Principles:
- Frosted glass cards (
backdrop-blur-xl) - Subtle borders and shadows for depth
- Smooth 300ms animations
- Binary choices over complex menus
- Immediate visual feedback
- Undo always visible
ADHD-Optimized UX
See references/adhd-design-principles.md for complete guidelines. Core tenets:
- Binary choices ("A or B") not multiple choice
- Immediate feedback - toasts, progress indicators, visual confirmation
- Forgiving interactions - Rollback Center always accessible
- Visual hierarchy - Important actions stand out
- No surprises - Every action is predictable and reversible
4-Week Implementation Workflow
Phase 1: Foundation + Dashboard + Basic Organize (Week 1)
Goal: Core infrastructure + can upload & organize a single file
Days 1-2: Project Setup
- Initialize Vite project: Use
scripts/init-frontend.sh - Install dependencies from
assets/package.json - Copy
assets/tailwind.config.tsfor liquid glass design tokens - Create Layout component (Sidebar + Header + Outlet)
- Set up React Router structure
Days 3-4: Dashboard
- Build SystemStatusCard - shows Drive sync, disk space, services
- Build QuickActionPanel - Upload, Search, Rollback buttons
- Build RecentActivityFeed - live stream of file operations
- Connect to
/api/system/statusand/api/rollback/operations
Days 5-7: Basic Organize
- Build FileUploadZone with react-dropzone
- Create
/api/organize/uploadendpoint (seereferences/api-endpoints.md) - Build classification preview UI
- Implement toast notifications (Sonner)
- Test: Upload file → see it organized
Week 1 Deliverable: ✅ Working dashboard + single file organization
Phase 2: Advanced Organize + Rollback Center (Week 2)
Goal: Complete file organization workflow + rollback system
Days 1-2: Confidence System + Interactive Questions
- Build ConfidenceModeSelector (NEVER/MINIMAL/SMART/ALWAYS)
- Create
/api/settings/confidenceendpoints - Build InteractiveQuestionModal
- "Is this about Finn or business?" [A] [B]
- Shows file preview, confidence score, reasoning
- Test: Low-confidence file triggers question
Days 3-4: Batch Processing
- Build BatchProcessingPanel
- Create
/api/organize/batchendpoint - Implement progress bars ("Processing 7 of 23 files...")
- Add pause/cancel functionality
- Test: Process folder of 20 files
Days 5-7: Rollback Center (CRITICAL)
- Build OperationTimeline component
- Build expandable OperationCard
- Shows before/after file paths
- Timestamp, operation type
- Create
/api/rollback/*endpoints (seereferences/api-endpoints.md) - Implement search/filter functionality
- Add Emergency Undo button (red, prominent)
- Test: Organize files → undo operation → verify restoration
Week 2 Deliverable: ✅ Full organize workflow + bulletproof rollback
Phase 3: Search + Analysis + VEO (Week 3)
Goal: Unified search + content analysis visibility + VEO library
Days 1-2: Unified Search
- Build SearchBar with mode toggle [Fast/Semantic/Auto]
- Build FilterPanel (date, category, location)
- Build ResultsList with react-window virtualization
- Create FileResultCard, EmailResultCard, ClipResultCard
- Test: Search "Finn contracts" → see PDF + email results
Days 3-4: Analysis Section
- Build AnalysisQueue component
- Build VisionResultCard (Gemini Vision output)
- Build AudioResultCard (BPM, mood, waveform)
- Create
/api/analysis/*endpoints - Test: Analyze image → see Gemini description
Days 5-7: VEO Studio
- Build ClipLibrary grid view
- Build ClipDetailView with Monaco JSON editor
- Enhance existing
/api/veo/*endpoints - Improve ContinuityGraph (hover tooltips, click navigation)
- Build BatchUploadModal for videos
- Test: Upload video → edit JSON → view continuity
Week 3 Deliverable: ✅ Search everything + analysis visible + VEO functional
Phase 4: Settings + Polish + Launch (Week 4)
Goal: System management + final refinements + production launch
Days 1-2: Settings Tabs
- Build Google Drive panel (
/api/settings/gdrive) - Build Space Protection panel (
/api/settings/space) - Build Background Services monitor
- Build Adaptive Learning panel
- Build Deduplication panel
- Test: Change confidence mode, reconnect Drive
Days 3-4: Polish & Animations
- Implement Framer Motion animations
- Add keyboard shortcuts (Cmd+K search, Cmd+U upload)
- Mobile responsive adjustments
- Dark/light mode toggle (optional)
- Loading skeletons for async content
Days 5-7: Testing & Optimization
- E2E test critical flows
- Performance optimization (code splitting, lazy loading)
- Accessibility (ARIA labels, keyboard navigation)
- Final UI polish
- Test with Ryan: 1 week of daily use without terminal
Week 4 Deliverable: ✅ Production-ready UI replacing all CLI tools
Component Architecture
Layout Structure
<BrowserRouter>
<Layout>
<Sidebar /> {/* Persistent navigation */}
<MainContent>
<Header /> {/* Breadcrumbs, notifications */}
<Outlet /> {/* Route content */}
</MainContent>
</Layout>
</BrowserRouter>
Main Sections (Routes)
- Dashboard (
/) - System status, quick actions, recent activity - Organize (
/organize) - File upload, classification, batch processing - Search (
/search) - Unified search across files, emails, VEO clips - VEO Studio (
/veo) - Video prompt library, continuity graph, JSON editor - Analysis (
/analysis) - Vision & audio analysis results gallery - Rollback Center (
/rollback) - Operation history, undo functionality - Settings (
/settings) - Drive, space, services, learning, dedup
See references/component-specifications.md for detailed component props, state management, and API integration patterns.
Backend Service Layer Strategy
Do NOT rewrite Python modules. Instead, wrap them:
# backend/services/organizer_service.py
from interactive_organizer import InteractiveOrganizer
class OrganizerService:
"""Wraps existing CLI tool for API use."""
async def classify_file(self, file_path: str):
result = await self.classifier.classify(file_path)
return ClassificationResult(
category=result['category'],
confidence=result['confidence'],
reasoning=result['reasoning']
)
Benefits:
- Reuse 31,415 lines of battle-tested Python logic
- Faster development (no rewrites)
- Easier debugging (Python unchanged)
See references/api-endpoints.md for complete API specification covering all 70+ CLI commands.
Resources
scripts/
init-frontend.sh - Initialize Vite project with all required dependencies. Run this first:
./scripts/init-frontend.sh
references/
Essential documentation to load as needed:
cli-tool-audit.md- Complete categorization of all 70+ CLI tools by function (organization, search, analysis, safety, etc.)api-endpoints.md- Full REST API specification for all required endpointscomponent-specifications.md- Detailed specs for all React components (props, state, API calls)adhd-design-principles.md- ADHD-specific UX guidelines (cognitive load, feedback, forgiveness, hierarchy)liquid-glass-design-system.md- Complete design system (colors, typography, animations, component patterns)
Usage: Load these files when implementing specific features. For example, when building the Organize section, read component-specifications.md for FileUploadZone and ConfidenceModeSelector details.
assets/
Code templates and configuration files:
package.json- All required npm dependencies (React, Vite, Tailwind, TanStack Query, etc.)tailwind.config.ts- Tailwind configuration with liquid glass design tokensvite.config.ts- Vite configuration for optimal buildcomponent-template.tsx- Example React component with proper TypeScript, hooks, and stylingtsconfig.json- TypeScript configuration
Usage: Copy these files directly into the frontend project during initialization.
Critical Success Factors
- Start with Dashboard + Basic Organize - Get core loop working first
- Rollback Center is Non-Negotiable - This is the trust mechanism
- Test with Real Files - Use Ryan's actual PDFs, contracts, emails
- ADHD-First UX Review - After each component: "Can I do this without thinking?"
- Performance Matters - Target <100ms UI response for all interactions
Definition of Done
This project is complete when:
- ✅ Ryan uses the system for 1 week without opening the terminal
- ✅ All 70+ CLI commands have UI equivalents
- ✅ Rollback system works flawlessly (tested with real mistakes)
- ✅ Search finds files across all sources (local, Drive, emails, VEO)
- ✅ UI feels fast, beautiful, and calming (not overwhelming)
- ✅ System status is always visible (no "is this working?" anxiety)
Final Test: Ask Ryan: "Would you recommend this to another person with ADHD?"
If yes, mission accomplished. 🎉
Version: 1.0 Status: Ready for implementation