Skip to content

Commit 287a122

Browse files
committed
Enhance philosophy colors and work style animations with meaningful design
Philosophy Colors - More Purposeful and Meaningful: - Rewarded: Gold, amber, orange tones - success and achievement - Playful: Hot pink, turquoise, deep pink - fun and vibrant energy - Scalable: Lime green, spring green, chartreuse - growth and expansion - One-team: Royal blue, dodger blue, sky blue - unity and collaboration - Clarity: Alice blue, lavender, white - clear and transparent - Grit: Dark red, crimson, fire brick - powerful and determined Work Style Animations - More Meaningful and Purposeful: - Iterative: Methodical refinement like polishing a gem (8s cycles) - Detail-oriented: Precise movements like a surgeon's hand (3s cycles) - Big-picture: Grand sweeping movements like orchestrating a symphony (12s cycles) - Collaborative: Harmonious synchronized movements like dance partnership (4s cycles) - Experimental: Bold unpredictable movements like mad scientist experiments (6s cycles) - Systematic: Precise mechanical movements like clockwork (2s cycles) Each animation now reflects the essence and personality of the work style, creating more meaningful and purposeful avatar representations.
1 parent 1342aaa commit 287a122

File tree

1 file changed

+70
-68
lines changed

1 file changed

+70
-68
lines changed

src/components/Avatar.tsx

Lines changed: 70 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -14,179 +14,181 @@ interface AvatarProps extends React.HTMLAttributes<HTMLDivElement> {
1414
workingStyle?: string;
1515
}
1616

17-
// Philosophy-based color palettes
17+
// Philosophy-based color palettes - meaningful and purposeful
1818
const PHILOSOPHY_COLORS = {
19-
'rewarded': ["#FF6B6B", "#FFE66D", "#4ECDC4"],
20-
'playful': ["#667EEA", "#764BA2", "#F093FB"],
21-
'scalable': ["#56AB2F", "#A8E6CF", "#FFD93D"],
22-
'one-team': ["#FF416C", "#FF4B2B", "#FF6B6B"],
23-
'clarity': ["#2C3E50", "#34495E", "#ECF0F1"],
24-
'grit': ["#FF9A9E", "#FECFEF", "#FECFEF"],
19+
'rewarded': ["#FFD700", "#FFA500", "#FF8C00"], // Gold, amber, orange - success and achievement
20+
'playful': ["#FF69B4", "#00CED1", "#FF1493"], // Hot pink, turquoise, deep pink - fun and vibrant
21+
'scalable': ["#32CD32", "#00FA9A", "#7FFF00"], // Lime green, medium spring green, chartreuse - growth and expansion
22+
'one-team': ["#4169E1", "#1E90FF", "#87CEEB"], // Royal blue, dodger blue, sky blue - unity and collaboration
23+
'clarity': ["#F0F8FF", "#E6E6FA", "#FFFFFF"], // Alice blue, lavender, white - clear and transparent
24+
'grit': ["#8B0000", "#DC143C", "#B22222"], // Dark red, crimson, fire brick - powerful and determined
2525
};
2626

27-
// Work style-based internal color animation variants
27+
// Work style-based internal color animation variants - meaningful and purposeful
2828
const WORK_STYLE_ANIMATIONS = {
2929
'iterative': {
30-
// Colors cycle through positions in a circular motion
30+
// Methodical, step-by-step refinement - like polishing a gem
3131
color1: {
3232
animate: {
33-
translateX: [0, 8, -8, 0],
34-
translateY: [0, -8, 8, 0],
35-
rotate: [0, 90, 180, 270, 360],
36-
scale: [1, 1.1, 0.9, 1],
33+
scale: [1, 1.08, 1.12, 1.08, 1],
34+
rotate: [0, 45, 90, 135, 180, 225, 270, 315, 360],
35+
translateX: [0, 3, 0, -3, 0],
36+
translateY: [0, -2, 0, 2, 0],
3737
},
3838
transition: {
39-
duration: 4,
39+
duration: 8,
4040
repeat: Infinity,
41-
ease: "linear" as const
41+
ease: "easeInOut" as const
4242
}
4343
},
4444
color2: {
4545
animate: {
46-
translateX: [0, -6, 6, 0],
47-
translateY: [0, 6, -6, 0],
48-
rotate: [0, -90, -180, -270, -360],
49-
scale: [1, 0.9, 1.1, 1],
46+
scale: [1, 0.95, 0.92, 0.95, 1],
47+
rotate: [0, -30, -60, -90, -120, -150, -180, -210, -240, -270, -300, -330, -360],
48+
translateX: [0, -2, 0, 2, 0],
49+
translateY: [0, 3, 0, -3, 0],
5050
},
5151
transition: {
52-
duration: 4,
52+
duration: 8.5,
5353
repeat: Infinity,
54-
ease: "linear" as const
54+
ease: "easeInOut" as const
5555
}
5656
}
5757
},
5858
'detail-oriented': {
59-
// Subtle pulsing and fine adjustments
59+
// Precise, careful movements - like a surgeon's hand
6060
color1: {
6161
animate: {
62-
scale: [1, 1.05, 1],
63-
translateX: [0, 2, -2, 0],
64-
translateY: [0, 1, -1, 0],
62+
scale: [1, 1.02, 1.04, 1.02, 1],
63+
translateX: [0, 1, 0.5, -0.5, 0],
64+
translateY: [0, 0.5, 1, 0.5, 0],
6565
},
6666
transition: {
67-
duration: 2,
67+
duration: 3,
6868
repeat: Infinity,
6969
ease: "easeInOut" as const
7070
}
7171
},
7272
color2: {
7373
animate: {
74-
scale: [1, 0.98, 1],
75-
translateX: [0, -1, 1, 0],
76-
translateY: [0, -2, 2, 0],
74+
scale: [1, 0.99, 0.98, 0.99, 1],
75+
translateX: [0, -0.5, -1, -0.5, 0],
76+
translateY: [0, -1, -0.5, 0.5, 0],
7777
},
7878
transition: {
79-
duration: 2.2,
79+
duration: 3.2,
8080
repeat: Infinity,
8181
ease: "easeInOut" as const
8282
}
8383
}
8484
},
8585
'big-picture': {
86-
// Slow, sweeping movements
86+
// Grand, sweeping movements - like orchestrating a symphony
8787
color1: {
8888
animate: {
89-
rotate: [0, 180, 360],
90-
scale: [1, 1.2, 1],
91-
translateX: [0, 10, -10, 0],
89+
scale: [1, 1.3, 1.5, 1.3, 1],
90+
rotate: [0, 90, 180, 270, 360],
91+
translateX: [0, 15, 0, -15, 0],
92+
translateY: [0, -10, 0, 10, 0],
9293
},
9394
transition: {
94-
duration: 6,
95+
duration: 12,
9596
repeat: Infinity,
9697
ease: "easeInOut" as const
9798
}
9899
},
99100
color2: {
100101
animate: {
101-
rotate: [0, -180, -360],
102-
scale: [1, 0.8, 1],
103-
translateY: [0, -10, 10, 0],
102+
scale: [1, 0.7, 0.5, 0.7, 1],
103+
rotate: [0, -90, -180, -270, -360],
104+
translateX: [0, -12, 0, 12, 0],
105+
translateY: [0, 8, 0, -8, 0],
104106
},
105107
transition: {
106-
duration: 6,
108+
duration: 12,
107109
repeat: Infinity,
108110
ease: "easeInOut" as const
109111
}
110112
}
111113
},
112114
'collaborative': {
113-
// Gentle, flowing movements
115+
// Harmonious, synchronized movements - like a dance partnership
114116
color1: {
115117
animate: {
116-
x: [0, 6, -6, 0],
117-
y: [0, -4, 4, 0],
118-
scale: [1, 1.1, 0.9, 1],
118+
scale: [1, 1.1, 1, 0.9, 1],
119+
translateX: [0, 8, 0, -8, 0],
120+
translateY: [0, -6, 0, 6, 0],
119121
},
120122
transition: {
121-
duration: 3,
123+
duration: 4,
122124
repeat: Infinity,
123125
ease: "easeInOut" as const
124126
}
125127
},
126128
color2: {
127129
animate: {
128-
x: [0, -4, 4, 0],
129-
y: [0, 6, -6, 0],
130-
scale: [1, 0.9, 1.1, 1],
130+
scale: [1, 0.9, 1, 1.1, 1],
131+
translateX: [0, -6, 0, 6, 0],
132+
translateY: [0, 8, 0, -8, 0],
131133
},
132134
transition: {
133-
duration: 3.5,
135+
duration: 4,
134136
repeat: Infinity,
135137
ease: "easeInOut" as const
136138
}
137139
}
138140
},
139141
'experimental': {
140-
// Chaotic, unpredictable movements
142+
// Bold, unpredictable movements - like a mad scientist's experiment
141143
color1: {
142144
animate: {
143-
scale: [1, 1.3, 0.7, 1],
144-
rotate: [0, 120, 240, 360],
145-
translateX: [0, 12, -8, 4, 0],
146-
translateY: [0, -8, 12, -4, 0],
145+
scale: [1, 1.4, 0.6, 1.6, 0.8, 1],
146+
rotate: [0, 72, 144, 216, 288, 360],
147+
translateX: [0, 15, -10, 8, -12, 0],
148+
translateY: [0, -12, 15, -8, 10, 0],
147149
},
148150
transition: {
149-
duration: 5,
151+
duration: 6,
150152
repeat: Infinity,
151153
ease: "easeInOut" as const
152154
}
153155
},
154156
color2: {
155157
animate: {
156-
scale: [1, 0.8, 1.4, 1],
157-
rotate: [0, -150, -300, -450],
158-
translateX: [0, -10, 6, -12, 0],
159-
translateY: [0, 10, -6, 8, 0],
158+
scale: [1, 0.7, 1.5, 0.5, 1.3, 1],
159+
rotate: [0, -108, -216, -324, -432, -540],
160+
translateX: [0, -12, 8, -15, 6, 0],
161+
translateY: [0, 10, -6, 12, -8, 0],
160162
},
161163
transition: {
162-
duration: 5.5,
164+
duration: 6.5,
163165
repeat: Infinity,
164166
ease: "easeInOut" as const
165167
}
166168
}
167169
},
168170
'systematic': {
169-
// Precise, rhythmic movements
171+
// Precise, mechanical movements - like clockwork
170172
color1: {
171173
animate: {
172-
scale: [1, 1.02, 1],
173-
translateX: [0, 3, 0],
174-
translateY: [0, 2, 0],
174+
scale: [1, 1.01, 1, 0.99, 1],
175+
translateX: [0, 2, 0, -2, 0],
176+
translateY: [0, 1, 0, -1, 0],
175177
},
176178
transition: {
177-
duration: 1.5,
179+
duration: 2,
178180
repeat: Infinity,
179181
ease: "linear" as const
180182
}
181183
},
182184
color2: {
183185
animate: {
184-
scale: [1, 0.98, 1],
185-
translateX: [0, -2, 0],
186-
translateY: [0, -3, 0],
186+
scale: [1, 0.99, 1, 1.01, 1],
187+
translateX: [0, -1, 0, 1, 0],
188+
translateY: [0, -2, 0, 2, 0],
187189
},
188190
transition: {
189-
duration: 1.5,
191+
duration: 2,
190192
repeat: Infinity,
191193
ease: "linear" as const
192194
}

0 commit comments

Comments
 (0)