feat: downgrade tech stack to stable versions and integrate GA4 error monitoring
- Downgrade Next.js 16→14.2, React 19→18.3, Tailwind 4→3.4 - Add comprehensive GA4 error monitoring system - Create Jenkins CI/CD pipeline with quality gates - Fix build issues: ESLint, SWC conflict, config format - Add documentation for deployment and error tracking
This commit is contained in:
@@ -0,0 +1,111 @@
|
||||
/** @type {import('tailwindcss').Config} */
|
||||
module.exports = {
|
||||
content: [
|
||||
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
|
||||
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
|
||||
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
|
||||
],
|
||||
theme: {
|
||||
extend: {
|
||||
fontFamily: {
|
||||
sans: [
|
||||
'var(--font-noto-sans-sc)',
|
||||
'var(--font-geist-sans)',
|
||||
'-apple-system',
|
||||
'BlinkMacSystemFont',
|
||||
'"Segoe UI"',
|
||||
'Roboto',
|
||||
'"Helvetica Neue"',
|
||||
'Arial',
|
||||
'sans-serif',
|
||||
],
|
||||
mono: ['var(--font-geist-mono)', 'monospace'],
|
||||
chinese: ['var(--font-noto-sans-sc)', 'sans-serif'],
|
||||
calligraphy: [
|
||||
'var(--font-ma-shan-zheng)',
|
||||
"'ZCOOL XiaoWei'",
|
||||
"'STKaiti'",
|
||||
"'KaiTi'",
|
||||
'serif',
|
||||
],
|
||||
},
|
||||
colors: {
|
||||
primary: {
|
||||
DEFAULT: '#1C1C1C',
|
||||
hover: '#0A0A0A',
|
||||
light: '#3D3D3D',
|
||||
lighter: '#F5F5F5',
|
||||
rgb: '28, 28, 28',
|
||||
},
|
||||
brand: {
|
||||
primary: '#C41E3A',
|
||||
hover: '#A01830',
|
||||
light: '#E04A68',
|
||||
'primary-bg': '#FEF2F4',
|
||||
},
|
||||
bg: {
|
||||
primary: '#FFFFFF',
|
||||
secondary: '#FFFBF5',
|
||||
tertiary: '#F5F5F5',
|
||||
section: '#FAFAFA',
|
||||
hover: '#EFEFEF',
|
||||
},
|
||||
text: {
|
||||
primary: '#1C1C1C',
|
||||
secondary: '#3D3D3D',
|
||||
tertiary: '#404040',
|
||||
muted: '#595959',
|
||||
subtle: '#A3A3A3',
|
||||
placeholder: '#5C5C5C',
|
||||
hint: '#8C8C8C',
|
||||
},
|
||||
border: {
|
||||
primary: '#E5E5E5',
|
||||
secondary: '#D4D4D4',
|
||||
accent: '#1C1C1C',
|
||||
light: '#F0F0F0',
|
||||
dark: '#333333',
|
||||
},
|
||||
link: {
|
||||
DEFAULT: '#1C1C1C',
|
||||
hover: '#C41E3A',
|
||||
},
|
||||
success: {
|
||||
DEFAULT: '#16A34A',
|
||||
hover: '#15803D',
|
||||
bg: '#F0DF4',
|
||||
},
|
||||
warning: {
|
||||
DEFAULT: '#D97706',
|
||||
hover: '#B45309',
|
||||
bg: '#FFFBEB',
|
||||
},
|
||||
},
|
||||
spacing: {
|
||||
'18': '4.5rem',
|
||||
'88': '22rem',
|
||||
'128': '32rem',
|
||||
},
|
||||
borderRadius: {
|
||||
'4xl': '2rem',
|
||||
'5xl': '2.5rem',
|
||||
},
|
||||
animation: {
|
||||
'fade-in': 'fadeIn 0.5s ease-in-out',
|
||||
'slide-up': 'slideUp 0.5s ease-out',
|
||||
'pulse-slow': 'pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite',
|
||||
},
|
||||
keyframes: {
|
||||
fadeIn: {
|
||||
'0%': { opacity: '0' },
|
||||
'100%': { opacity: '1' },
|
||||
},
|
||||
slideUp: {
|
||||
'0%': { transform: 'translateY(10px)', opacity: '0' },
|
||||
'100%': { transform: 'translateY(0)', opacity: '1' },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
plugins: [],
|
||||
};
|
||||
Reference in New Issue
Block a user