Skip to content

Commit f8a5bcb

Browse files
Lib-LOCALEclaude
andcommitted
feat: add animated SVG icons to enhance UI liveliness
### Added - 5 professional animated SVG icons (tomato, timer, check, focus, stats) - AnimatedIcon Svelte component for easy integration - Animated feedback in PomodoroTimer (replaces static emojis) - Animated stats icon in SummaryView header - Comprehensive icons documentation ### Changed - PomodoroTimer: Uses animated tomato on work completion, animated check on break completion - SummaryView: Animated stats icon in header - README: Corrected installation instructions (AppImage for Linux, x64 for Windows only) ### Technical - All animations use CSS transforms for 60fps performance - GPU-accelerated animations (transform, opacity) - Accessible SVG with proper ARIA labels - ~2-4KB per icon (minified) - PixelLab MCP server configured for future pixel art generation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 623ac41 commit f8a5bcb

12 files changed

Lines changed: 715 additions & 28 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ dist-ssr
2424
# Claude Code configuration (personal files)
2525
.claude/
2626

27+
# MCP configuration (contains API keys)
28+
.mcp.json
29+
2730
# Specify configuration (project planning files)
2831
.specify/
2932

README.md

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -92,41 +92,22 @@
9292

9393
## 📥 Installation
9494

95-
### Windows
95+
### Windows (x64)
9696

9797
Download and run the installer:
98-
- **Recommended**: `TomatoTask_1.0.19_x64-setup.exe` (NSIS installer)
99-
- Alternative: `TomatoTask_1.0.19_x64-setup.msi` (MSI installer)
98+
- `TomatoTask_1.0.19_x64-setup.exe` (NSIS installer)
10099

101100
### Linux
102101

103-
**Flatpak (Recommended):**
104-
105-
```bash
106-
# From GitHub Releases
107-
flatpak install tomatotask-v1.0.19.flatpak
108-
flatpak run com.tomatotask.app
109-
```
110-
111-
**AppImage:**
102+
**AppImage (Universal):**
112103

113104
```bash
114105
# Download and make executable
115106
chmod +x TomatoTask_1.0.19_amd64.AppImage
116107
./TomatoTask_1.0.19_amd64.AppImage
117108
```
118109

119-
**Debian/Ubuntu:**
120-
121-
```bash
122-
sudo dpkg -i tomatotask_1.0.19_amd64.deb
123-
```
124-
125-
### macOS
126-
127-
Download and open the DMG file:
128-
- `TomatoTask_1.0.19_x64.dmg` (Intel)
129-
- `TomatoTask_1.0.19_aarch64.dmg` (Apple Silicon)
110+
The AppImage format works on all Linux distributions without installation.
130111

131112
[**📦 Download Latest Release**](https://github.com/AnthonyMahe/TomatoTask/releases/latest)
132113

public/icons/README.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Animated Icons
2+
3+
This directory contains SVG animated icons for TomatoTask application.
4+
5+
## Available Icons
6+
7+
### 🍅 Animated Tomato (`animated-tomato.svg`)
8+
- **Animation**: Floating + Pulsing + Stem waving
9+
- **Usage**: Completion feedback, loading screens
10+
- **Colors**: Red (#F44336), Green stem (#4CAF50)
11+
- **Duration**: 2-3 seconds per cycle
12+
13+
### ⏱️ Animated Timer (`animated-timer.svg`)
14+
- **Animation**: Rotating hand + Pulsing ring
15+
- **Usage**: Timer display, focus mode indicator
16+
- **Colors**: Indigo (#6366f1), Red hand (#ef4444)
17+
- **Duration**: 4 seconds per rotation
18+
19+
### ✓ Animated Check (`animated-check.svg`)
20+
- **Animation**: Drawing effect (circle + checkmark)
21+
- **Usage**: Task completion, success states
22+
- **Colors**: Green (#22c55e), Light green bg (#dcfce7)
23+
- **Duration**: 1 second drawing + hover pulse
24+
25+
### 👁️ Animated Focus (`animated-focus.svg`)
26+
- **Animation**: Dual rotating rings + Ray pulse
27+
- **Usage**: Focus mode, concentration indicator
28+
- **Colors**: Amber (#f59e0b), Yellow (#fbbf24)
29+
- **Duration**: 6-8 seconds per rotation
30+
31+
### 📊 Animated Stats (`animated-stats.svg`)
32+
- **Animation**: Growing bars + Drawing trend line + Popping dots
33+
- **Usage**: Statistics view, productivity insights
34+
- **Colors**: Indigo bars (#6366f1), Green trend (#10b981)
35+
- **Duration**: 1.5 seconds total animation
36+
37+
## Usage in Svelte
38+
39+
```svelte
40+
<script>
41+
import AnimatedIcon from '$lib/components/ui/AnimatedIcon.svelte';
42+
</script>
43+
44+
<AnimatedIcon name="tomato" size={64} />
45+
<AnimatedIcon name="timer" size={48} class="custom-class" />
46+
<AnimatedIcon name="check" size={80} />
47+
<AnimatedIcon name="focus" size={64} />
48+
<AnimatedIcon name="stats" size={48} />
49+
```
50+
51+
## Technical Details
52+
53+
- **Format**: SVG with embedded CSS animations
54+
- **Performance**: GPU-accelerated transforms
55+
- **Accessibility**: Includes proper ARIA labels
56+
- **Browser Support**: All modern browsers
57+
- **File Size**: ~2-4KB per icon (minified)
58+
59+
## Animation Types Used
60+
61+
- `@keyframes float` - Vertical movement
62+
- `@keyframes pulse` - Scale transformation
63+
- `@keyframes rotate-slow/reverse` - 360° rotation
64+
- `@keyframes draw-circle/check` - Stroke dasharray animation
65+
- `@keyframes grow-bar` - Height/position animation
66+
- `@keyframes pop-dot` - Scale from 0 to 1
67+
68+
## Design Principles
69+
70+
1. **Smooth**: 60fps animations using transform and opacity
71+
2. **Subtle**: Non-distracting, enhances UX without overwhelming
72+
3. **Purposeful**: Each animation communicates state or action
73+
4. **Performance**: Uses CSS transforms, no JavaScript required
74+
5. **Accessible**: Works with screen readers, respects prefers-reduced-motion
75+
76+
## Future Icons (via PixelLab MCP)
77+
78+
The PixelLab MCP server is configured for generating additional pixel art assets:
79+
- Directional character sprites
80+
- Animated game sprites
81+
- Isometric tiles
82+
- Custom map objects
83+
84+
Use `claude mcp list` to verify PixelLab connection status.

public/icons/animated-check.svg

Lines changed: 94 additions & 0 deletions
Loading

public/icons/animated-focus.svg

Lines changed: 109 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)