9.8 KiB
9.8 KiB
UI/UX Improvements - Testing Guide
Quick Start
-
Start the app:
cd /home/fahed/clawd/marketing-app ./start.sh -
Access the app:
- Open browser:
http://localhost:5173 - Login with your credentials
- Open browser:
Test Scenarios
1. Toast Notifications 🍞
Post Operations
- Go to Post Production page
- Click "New Post"
- Fill in title, select brand, platform
- Click "Create Post"
- ✅ Should see: Green success toast "Post created successfully!"
- Click a post to edit
- Change the title
- Click "Save Changes"
- ✅ Should see: Green success toast "Post updated successfully!"
- Drag a post to "Published" column (without publication links)
- ✅ Should see: Red error toast
- Click a post, click "Delete", confirm
- ✅ Should see: Green success toast "Post deleted successfully!"
Task Operations
- Go to Tasks page
- Click "New Task"
- Fill in title
- Click "Create Task"
- ✅ Should see: Green success toast "Task created successfully!"
- Drag a task from "To Do" to "In Progress"
- ✅ Should see: Green success toast "Task status updated!"
Multiple Toasts
- Quickly create 3 tasks in a row
- ✅ Should see: 3 toasts stacked on top of each other
- ✅ Each should auto-dismiss after 4 seconds
2. Loading States ⏳
Dashboard
- Refresh the page while on Dashboard
- ✅ Should see: Skeleton loaders for:
- Welcome message
- 4 stat cards
- Recent posts list
- Upcoming deadlines list
- ✅ After loading: Smooth fade to actual content
- ✅ Should see: Skeleton loaders for:
Posts (Kanban View)
- Go to Post Production
- Refresh the page
- ✅ Should see: 5-column skeleton board with card placeholders
- ✅ After loading: Posts appear in correct columns
Posts (List View)
- Click the List view icon
- Refresh the page
- ✅ Should see: Table skeleton with 6 columns
- ✅ After loading: Table rows appear
Tasks
- Go to Tasks page
- Refresh the page
- ✅ Should see: Skeleton kanban board
- ✅ After loading: Tasks appear in columns
3. Empty States 🗂️
No Posts
- Go to Post Production
- Delete all posts (or use filters to hide all)
- With no posts at all:
- ✅ Should see: Empty state with:
- FileText icon
- "No posts" title
- Helpful description
- "Create Post" button
- ✅ Should see: Empty state with:
- Click the button
- ✅ Should open: Create post modal
Posts Filtered (No Results)
- Select a brand filter that has no posts
- ✅ Should see: Empty state with:
- "No posts found" title
- "Try different filter" description
- "Clear Filters" button
- ✅ Should see: Empty state with:
- Click the button
- ✅ Should clear: All filters
No Tasks
- Go to Tasks page
- Delete all tasks
- ✅ Should see: Empty state with:
- CheckSquare icon
- "No tasks yet" title
- "Create Task" button
- ✅ Should see: Empty state with:
Tasks Filtered (No Results)
- Select "Assigned to Me" filter (if you have no tasks assigned)
- ✅ Should see: Empty state with:
- "No tasks match this filter" title
- "Clear Filters" button
- ✅ Should see: Empty state with:
4. Micro-interactions ✨
Button Hover Effects
- Hover over any button
- ✅ Should see: Button lifts slightly (
-1px) - ✅ Should see: Subtle shadow appears
- ✅ Should see: Button lifts slightly (
- Click and hold a button
- ✅ Should see: Button presses down (scale
0.98)
- ✅ Should see: Button presses down (scale
Card Hover Effects
- Hover over a PostCard (in Kanban view)
- ✅ Should see:
- Card lifts up (
-3px) - Shadow becomes more prominent
- Smooth transition
- Card lifts up (
- ✅ Should see:
- Hover over a TaskCard
- ✅ Should see: Same elevation effect
- ✅ Should see: Quick action button appears
Stat Card Animation
- Go to Dashboard
- Refresh the page
- ✅ Should see: 4 stat cards animate in with stagger effect
- ✅ Each card appears 50ms after the previous one
Focus States
- Press Tab repeatedly to navigate
- ✅ Should see: Blue outline (focus ring) on each element
- ✅ Ring should be 2px wide with 2px offset
- Navigate to any input field
- Press Tab
- ✅ Should see: Focus ring around input
5. Form UX 📝
Loading Button State
- Go to Post Production
- Click "New Post"
- Fill in title
- Click "Create Post"
- ✅ During save: Button shows spinner (text disappears)
- ✅ Button is disabled (no double-click possible)
- ✅ After save: Button returns to normal, modal closes
Same for Tasks
- Create a task
- ✅ Save button shows loading spinner
- ✅ Cannot submit twice
Input Focus States
- Click any input field
- ✅ Should see: Blue border and ring effect
- Hover over an input (without clicking)
- ✅ Should see: Border color changes slightly
6. Card Improvements 🎴
PostCard Visual Hierarchy
- Look at posts in Kanban view
- ✅ Title is prominent (larger, bold)
- ✅ Metadata is subtle (smaller, gray)
- ✅ Platforms shown with icons
- ✅ Brand badge clearly visible
- Hover over a card
- ✅ Quick action buttons appear
- ✅ Card elevates smoothly
TaskCard Visual Hierarchy
- Look at tasks
- ✅ Priority dot is visible (left side, colored)
- ✅ Title is clear
- ✅ "From:" label for tasks assigned by others
- ✅ "Assigned to:" label for tasks you delegated
- ✅ Due date with clock icon
- Look for overdue tasks
- ✅ Due date should be red
7. Accessibility ♿
Keyboard Navigation
- Press Tab to navigate through the page
- ✅ Tab order is logical
- ✅ All interactive elements can be reached
- ✅ Focus is visible at all times
- Open a modal
- Press Escape
- ✅ Modal closes
- Open a dropdown/select
- Use Arrow keys to navigate options
- ✅ Should work
Screen Reader (Optional)
- Enable screen reader (VoiceOver on Mac, NVDA on Windows)
- Navigate the page
- ✅ All text is read correctly
- ✅ Buttons are labeled
- ✅ Form labels are associated with inputs
Color Contrast
- Look at all text elements
- ✅ Text is readable (WCAG AA compliant)
- ✅ Status badges have good contrast
- ✅ Buttons have clear text
8. RTL & i18n 🌍
Switch to Arabic
- Go to Settings
- Select Arabic language
- Check:
- ✅ All text switches to Arabic
- ✅ Layout flips (RTL)
- ✅ Toasts appear on correct side
- ✅ All new features have Arabic translations
Toast Messages in Arabic
- Create a post
- ✅ Toast shows: "تم إنشاء المنشور بنجاح!"
- Update a task
- ✅ Toast shows: "تم تحديث المهمة بنجاح!"
Visual Checklist
✅ Toast System
- Success toasts are green
- Error toasts are red
- Warning toasts are amber
- Info toasts are blue
- Toasts have icons
- Toasts auto-dismiss
- Multiple toasts stack
- Manual close works
✅ Loading States
- Dashboard skeleton matches layout
- Posts skeleton (Kanban) shows 5 columns
- Posts skeleton (List) shows table
- Tasks skeleton shows 3 columns
- Smooth transition to content
✅ Empty States
- Posts empty state has icon
- Posts empty state has CTA
- Tasks empty state has icon
- Tasks empty state has CTA
- Filtered empty states offer clear filters
- Messages are helpful and friendly
✅ Micro-interactions
- Buttons lift on hover
- Buttons press on click
- Cards elevate on hover
- Stat cards stagger animate
- Focus rings are visible
- Smooth transitions everywhere
✅ Forms
- Save buttons show loading
- Buttons disable during save
- No double-submission
- Focus states work
- Required fields marked
✅ Cards
- PostCard has hover effect
- TaskCard has hover effect
- Visual hierarchy is clear
- Quick actions appear on hover
✅ Accessibility
- Tab navigation works
- Focus is always visible
- Escape closes modals
- Color contrast is good
- Labels are descriptive
✅ i18n
- Arabic translation complete
- RTL layout works
- Toasts in correct language
Performance Check
Page Load Times
- Dashboard: Should load < 1 second
- Posts: Should load < 1 second
- Tasks: Should load < 1 second
Animation Smoothness
- All animations should be smooth (60fps)
- No jank or stuttering
- Hover effects are instant
Network (DevTools)
- Open DevTools → Network tab
- Refresh the page
- Check:
- Total bundle size reasonable
- No errors
- API calls complete quickly
Common Issues & Solutions
Issue: Toasts don't appear
- Check: Is ToastProvider wrapping the app in App.jsx?
- Check: Is
useToast()called inside a component within ToastProvider?
Issue: Skeletons don't show
- Check: Is the loading state properly set before data fetch?
- Check: Are skeleton components imported correctly?
Issue: Animations are choppy
- Check: Browser hardware acceleration enabled?
- Check: Too many elements animating at once?
Issue: Focus ring not visible
- Check: Browser default focus outline not overridden?
- Check: CSS for focus-visible applied?
Issue: RTL layout broken
- Check: All directional CSS uses logical properties?
- Check: Icons/images flipped correctly?
Reporting Issues
If you find any issues:
- Note the exact steps to reproduce
- Take a screenshot if visual
- Check browser console for errors
- Note browser and version
Success Criteria
The app passes if:
- ✅ All toast scenarios work
- ✅ All loading states appear correctly
- ✅ All empty states are helpful
- ✅ Animations are smooth
- ✅ Forms provide feedback
- ✅ Cards look polished
- ✅ Accessibility features work
- ✅ i18n is complete
Happy Testing! 🎉