@@ -13,42 +13,42 @@ const team = [
1313 name : 'Mao Mao' ,
1414 role : 'Co-founder & CEO' ,
1515 bio : 'Fearless sheriff turned fintech leader, brings justice to cross-chain payments with legendary sword skills' ,
16- image : 'https://images.unsplash.com/photo-1493666438817-866a91353ca9?w=300&h=300&fit=crop&crop=face ' ,
16+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/mao-mao.png ' ,
1717 linkedin : 'https://linkedin.com/in/sheriff-mao-mao'
1818 } ,
1919 {
2020 name : 'Badgerclops' ,
2121 role : 'Co-founder & CTO' ,
2222 bio : 'Cybernetic badger engineer with mechanical arm, built SVM-Pay\'s core infrastructure while eating muffins' ,
23- image : 'https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=300&h=300&fit=crop&crop=face ' ,
23+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/badgerclops.png ' ,
2424 linkedin : 'https://linkedin.com/in/badgerclops-deputy'
2525 } ,
2626 {
2727 name : 'Adorabat' ,
2828 role : 'Head of Security' ,
2929 bio : 'Smallest team member but fiercest defender, uses sonic screams to detect payment vulnerabilities' ,
30- image : 'https://images.unsplash.com/photo-1558618047-3c8c76ca7d13?w=300&h=300&fit=crop&crop=face ' ,
30+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/adorabat.png ' ,
3131 linkedin : 'https://linkedin.com/in/adorabat-hero'
3232 } ,
3333 {
3434 name : 'King Snugglemagne' ,
3535 role : 'Head of Business Development' ,
3636 bio : 'Charismatic ruler of Pure Heart Valley, uses royal connections to expand SVM-Pay globally' ,
37- image : 'https://images.unsplash.com/photo-1519085360753-af0119f7cbe7?w=300&h=300&fit=crop&crop=face ' ,
37+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/king-snugglemagne.png ' ,
3838 linkedin : 'https://linkedin.com/in/king-snugglemagne'
3939 } ,
4040 {
4141 name : 'Tanya Keys' ,
4242 role : 'Head of Product' ,
4343 bio : 'Former bounty hunter turned product strategist, designs payment flows with precision targeting' ,
44- image : 'https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?w=300&h=300&fit=crop&crop=face ' ,
44+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/tanya-keys.png ' ,
4545 linkedin : 'https://linkedin.com/in/tanya-keys'
4646 } ,
4747 {
4848 name : 'Eugene' ,
4949 role : 'Blockchain Engineer' ,
5050 bio : 'Genius inventor and engineer, creates innovative bridge protocols while maintaining his experimental lab' ,
51- image : 'https://images.unsplash.com/photo-1556157382-97eda2d62296?w=300&h=300&fit=crop&crop=face ' ,
51+ image : 'https://cdn.jsdelivr.net/gh/maomao-heroes/assets@main/characters/eugene.png ' ,
5252 linkedin : 'https://linkedin.com/in/eugene-inventor'
5353 }
5454]
@@ -252,11 +252,28 @@ export function AboutPage() {
252252 transition = { { duration : 0.8 , delay : index * 0.1 } }
253253 className = "bg-white rounded-2xl p-6 shadow-sm border text-center hover:shadow-lg transition-all duration-300"
254254 >
255- < img
256- src = { member . image }
257- alt = { member . name }
258- className = "w-24 h-24 rounded-full mx-auto mb-4 object-cover"
259- />
255+ < div className = "relative" >
256+ < img
257+ src = { member . image }
258+ alt = { member . name }
259+ className = "w-24 h-24 rounded-full mx-auto mb-4 object-cover"
260+ onError = { ( e ) => {
261+ // Fallback to character-specific avatar if image fails to load
262+ const fallbackAvatars : Record < string , string > = {
263+ 'Mao Mao' : 'https://ui-avatars.com/api/?name=Mao+Mao&background=dc2626&color=fff&size=200&format=png&rounded=true' ,
264+ 'Badgerclops' : 'https://ui-avatars.com/api/?name=Badgerclops&background=0369a1&color=fff&size=200&format=png&rounded=true' ,
265+ 'Adorabat' : 'https://ui-avatars.com/api/?name=Adorabat&background=c026d3&color=fff&size=200&format=png&rounded=true' ,
266+ 'King Snugglemagne' : 'https://ui-avatars.com/api/?name=King+S&background=ca8a04&color=fff&size=200&format=png&rounded=true' ,
267+ 'Tanya Keys' : 'https://ui-avatars.com/api/?name=Tanya+Keys&background=059669&color=fff&size=200&format=png&rounded=true' ,
268+ 'Eugene' : 'https://ui-avatars.com/api/?name=Eugene&background=7c3aed&color=fff&size=200&format=png&rounded=true'
269+ } ;
270+ ( e . target as HTMLImageElement ) . src = fallbackAvatars [ member . name ] || 'https://ui-avatars.com/api/?name=' + member . name + '&background=6366f1&color=fff&size=200&format=png&rounded=true' ;
271+ } }
272+ />
273+ < div className = "absolute -bottom-2 -right-2 w-6 h-6 bg-gradient-to-r from-purple-600 to-blue-600 rounded-full flex items-center justify-center" >
274+ < div className = "w-2 h-2 bg-white rounded-full" > </ div >
275+ </ div >
276+ </ div >
260277 < h3 className = "text-xl font-bold text-slate-900 mb-1" > { member . name } </ h3 >
261278 < p className = "text-purple-600 font-medium mb-3" > { member . role } </ p >
262279 < p className = "text-slate-600 text-sm mb-4 leading-relaxed" > { member . bio } </ p >
0 commit comments