feat: add theme constants and animation variants
This commit is contained in:
@@ -321,3 +321,81 @@ export const SOCIAL_LINKS = [
|
||||
{ name: 'LinkedIn', href: '#', icon: 'Linkedin' },
|
||||
{ name: 'GitHub', href: '#', icon: 'Github' },
|
||||
] as const;
|
||||
|
||||
// Theme Constants
|
||||
export const THEME = {
|
||||
colors: {
|
||||
dark: {
|
||||
DEFAULT: '#0A0A0A',
|
||||
secondary: '#1A1A1A',
|
||||
tertiary: '#2A2A2A',
|
||||
},
|
||||
tech: {
|
||||
blue: '#00D9FF',
|
||||
purple: '#A855F7',
|
||||
cyan: '#06B6D4',
|
||||
},
|
||||
text: {
|
||||
primary: '#FFFFFF',
|
||||
secondary: '#A0A0A0',
|
||||
disabled: '#606060',
|
||||
},
|
||||
},
|
||||
gradients: {
|
||||
primary: 'linear-gradient(135deg, #00D9FF 0%, #A855F7 100%)',
|
||||
dark: 'linear-gradient(180deg, #0A0A0A 0%, #1A1A1A 100%)',
|
||||
glow: 'radial-gradient(circle, #00D9FF20 0%, transparent 70%)',
|
||||
},
|
||||
spacing: {
|
||||
xs: '4px',
|
||||
sm: '8px',
|
||||
md: '16px',
|
||||
lg: '24px',
|
||||
xl: '32px',
|
||||
'2xl': '48px',
|
||||
'3xl': '64px',
|
||||
},
|
||||
borderRadius: {
|
||||
sm: '8px',
|
||||
md: '12px',
|
||||
lg: '16px',
|
||||
full: '9999px',
|
||||
},
|
||||
animation: {
|
||||
fast: '150ms',
|
||||
standard: '300ms',
|
||||
slow: '500ms',
|
||||
verySlow: '1000ms',
|
||||
},
|
||||
breakpoints: {
|
||||
sm: '640px',
|
||||
md: '768px',
|
||||
lg: '1024px',
|
||||
xl: '1280px',
|
||||
'2xl': '1536px',
|
||||
},
|
||||
} as const;
|
||||
|
||||
// Animation Variants for Framer Motion
|
||||
export const ANIMATION_VARIANTS = {
|
||||
fadeInUp: {
|
||||
initial: { opacity: 0, y: 20 },
|
||||
animate: { opacity: 1, y: 0 },
|
||||
exit: { opacity: 0, y: -20 },
|
||||
},
|
||||
fadeInScale: {
|
||||
initial: { opacity: 0, scale: 0.95 },
|
||||
animate: { opacity: 1, scale: 1 },
|
||||
exit: { opacity: 0, scale: 0.95 },
|
||||
},
|
||||
slideInLeft: {
|
||||
initial: { opacity: 0, x: -20 },
|
||||
animate: { opacity: 1, x: 0 },
|
||||
exit: { opacity: 0, x: 20 },
|
||||
},
|
||||
slideInRight: {
|
||||
initial: { opacity: 0, x: 20 },
|
||||
animate: { opacity: 1, x: 0 },
|
||||
exit: { opacity: 0, x: -20 },
|
||||
},
|
||||
} as const;
|
||||
|
||||
Reference in New Issue
Block a user