管理后台

This commit is contained in:
xujiang
2025-07-09 17:50:29 +08:00
parent 0651b6626a
commit 5f2152c7a6
40 changed files with 3839 additions and 795 deletions

165
admin/Makefile Normal file
View File

@ -0,0 +1,165 @@
# Photography Admin Makefile
# 使用 Bun 作为包管理器和运行时
.PHONY: help install dev build clean lint type-check format test preview setup quick status
# 默认目标
help:
@echo "Photography Admin - 管理后台"
@echo "使用 Bun 作为包管理器和运行时"
@echo ""
@echo "可用命令:"
@echo " setup - 初始化开发环境"
@echo " quick - 快速启动 (安装依赖 + 启动开发服务器)"
@echo " install - 安装依赖"
@echo " dev - 启动开发服务器"
@echo " build - 构建生产版本"
@echo " preview - 预览构建结果"
@echo " lint - 代码检查"
@echo " type-check - TypeScript 类型检查"
@echo " format - 格式化代码"
@echo " test - 运行测试"
@echo " clean - 清理构建文件"
@echo " status - 显示项目状态"
@echo ""
@echo "🥖 使用 Bun 提供极速的开发体验!"
# 初始化开发环境
setup:
@echo "🔧 设置管理后台开发环境..."
@if ! command -v bun >/dev/null 2>&1; then \
echo "❌ Bun 未安装,请先安装 Bun:"; \
echo " curl -fsSL https://bun.sh/install | bash"; \
exit 1; \
fi
@echo "✅ Bun 已安装: $$(bun --version)"
@echo "📦 安装依赖..."
@bun install
@echo "🎉 环境设置完成!"
# 快速启动 (安装依赖 + 启动开发服务器)
quick:
@echo "🚀 快速启动管理后台..."
@bun install
@echo "🔥 启动开发服务器..."
@bun run dev
# 安装依赖
install:
@echo "📦 安装依赖 (使用 Bun)..."
@bun install
# 启动开发服务器
dev:
@echo "🔥 启动开发服务器..."
@bun run dev
# 构建生产版本
build:
@echo "🏗️ 构建生产版本..."
@bun run type-check
@bun run build
@echo "✅ 构建完成! 产物在 dist/ 目录"
# 预览构建结果
preview:
@echo "👀 预览构建结果..."
@bun run preview
# 代码检查
lint:
@echo "🔍 运行代码检查..."
@bun run lint
# 修复代码格式问题
lint-fix:
@echo "🔧 修复代码格式问题..."
@bun run lint:fix
# TypeScript 类型检查
type-check:
@echo "📝 运行 TypeScript 类型检查..."
@bun run type-check
# 格式化代码
format:
@echo "🎨 格式化代码..."
@bun run format
# 修复格式问题
format-fix:
@echo "✨ 修复格式问题..."
@bun run format:fix
# 运行测试
test:
@echo "🧪 运行测试..."
@bun run test
# 清理构建文件
clean:
@echo "🧹 清理构建文件..."
@rm -rf dist/
@rm -rf node_modules/.cache/
@echo "✅ 清理完成!"
# 显示项目状态
status:
@echo "📊 项目状态:"
@echo "运行时: $$($${HOME}/.bun/bin/bun --version)"
@echo "Node.js: $$(node --version)"
@echo "依赖状态:"
@if [ -f "bun.lock" ] || [ -f "bun.lockb" ]; then \
echo " ✅ bun.lock 存在"; \
else \
echo " ❌ bun.lock 不存在,请运行 'make install'"; \
fi
@if [ -d "node_modules" ]; then \
echo " ✅ node_modules 存在"; \
else \
echo " ❌ node_modules 不存在,请运行 'make install'"; \
fi
@if [ -d "dist" ]; then \
echo " ✅ dist 构建目录存在"; \
echo " 📦 构建大小: $$(du -sh dist/ | cut -f1)"; \
else \
echo " ❌ dist 目录不存在,请运行 'make build'"; \
fi
# 分析构建产物
analyze:
@echo "📊 分析构建产物..."
@bun run build
@echo "📁 文件结构:"
@find dist/ -type f | head -20
@echo "📈 文件大小排序:"
@find dist/ -type f -exec ls -lh {} + | sort -k5 -hr | head -10
# 安全审计
audit:
@echo "🔒 运行安全审计..."
@bun audit
# 检查过时依赖
outdated:
@echo "🔍 检查过时依赖..."
@bun outdated
# 更新依赖
update:
@echo "⬆️ 更新依赖..."
@bun update
# 开发环境完整检查
check: lint type-check test
@echo "✅ 所有检查通过!"
# 生产环境构建
prod: clean install check build
@echo "🚀 生产环境构建完成!"
# 部署准备
deploy-prep: prod
@echo "📦 准备部署文件..."
@cd dist && tar -czf ../admin-dist.tar.gz *
@echo "✅ 部署包已生成: admin-dist.tar.gz"