feat(auth): 添加认证模块和图片批注功能(项目初始化)
- 实现用户登录、登出、密码修改等认证功能 - 添加会话管理和权限控制中间件 - 创建图片批注组件和相关API路由 - 实现批注的增删改查功能 - 添加Docker和Git忽略配置文件 - 创建系统架构文档和开发约定说明 - 集成认证模块到前端应用路由中
This commit is contained in:
71
tailwind.config.js
Normal file
71
tailwind.config.js
Normal file
@@ -0,0 +1,71 @@
|
||||
/** @type {import('tailwindcss').Config} */
|
||||
|
||||
export default {
|
||||
darkMode: "class",
|
||||
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
|
||||
theme: {
|
||||
container: {
|
||||
center: true,
|
||||
},
|
||||
extend: {
|
||||
colors: {
|
||||
paper: "#F5F1EA", // 米白纸张
|
||||
ink: "#1A1A1A", // 墨黑
|
||||
ochre: "#B8412E", // 赭石红
|
||||
sage: "#5C6B5A", // 鼠尾草绿
|
||||
cream: "#FBF8F2", // 奶白
|
||||
stone: {
|
||||
50: "#FAF7F2",
|
||||
100: "#F0EBE0",
|
||||
200: "#E2DACA",
|
||||
300: "#C9BCA3",
|
||||
400: "#A8997A",
|
||||
500: "#857558",
|
||||
600: "#65573E",
|
||||
700: "#4A3F2C",
|
||||
800: "#2E2619",
|
||||
900: "#1A150E",
|
||||
},
|
||||
},
|
||||
fontFamily: {
|
||||
display: ['Fraunces', 'Georgia', 'serif'],
|
||||
body: ['Inter', 'system-ui', 'sans-serif'],
|
||||
mono: ['JetBrains Mono', 'ui-monospace', 'monospace'],
|
||||
},
|
||||
letterSpacing: {
|
||||
'tightest': '-0.04em',
|
||||
'tighter-2': '-0.06em',
|
||||
},
|
||||
animation: {
|
||||
'fade-up': 'fadeUp 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) both',
|
||||
'fade-in': 'fadeIn 0.6s ease-out both',
|
||||
'pulse-soft': 'pulseSoft 2.4s ease-in-out infinite',
|
||||
'scale-in': 'scaleIn 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) both',
|
||||
'draw-line': 'drawLine 1s ease-out both',
|
||||
},
|
||||
keyframes: {
|
||||
fadeUp: {
|
||||
'0%': { opacity: '0', transform: 'translateY(16px)' },
|
||||
'100%': { opacity: '1', transform: 'translateY(0)' },
|
||||
},
|
||||
fadeIn: {
|
||||
'0%': { opacity: '0' },
|
||||
'100%': { opacity: '1' },
|
||||
},
|
||||
pulseSoft: {
|
||||
'0%, 100%': { transform: 'scale(1)', opacity: '1' },
|
||||
'50%': { transform: 'scale(1.12)', opacity: '0.85' },
|
||||
},
|
||||
scaleIn: {
|
||||
'0%': { opacity: '0', transform: 'scale(0.9)' },
|
||||
'100%': { opacity: '1', transform: 'scale(1)' },
|
||||
},
|
||||
drawLine: {
|
||||
'0%': { transform: 'scaleX(0)' },
|
||||
'100%': { transform: 'scaleX(1)' },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
plugins: [],
|
||||
};
|
||||
Reference in New Issue
Block a user