{"repo":"Fridolph/my-resume","free":true,"listed":false,"github":"https://github.com/Fridolph/my-resume","clone":"git clone https://github.com/Fridolph/my-resume.git","description":"个人简历 2026 全栈完整版更新，支持自动化部署，后续持续学习和加入 AI 功能，欢迎交流学习。有帮助Star鼓励下吧，谢谢！","language":"TypeScript","stars":35,"topics":["resume","tailwindcss","ai-agent","monorepo","nestjs","nextjs","react","sqlite","typescript"],"license":"GPL-3.0","category":"databases-storage","readme_excerpt":"my-resume 教程型全栈 Monorepo：从旧版 Vue 简历站，渐进重构为可开源、可部署、可继续演进的三端架构。 English ✨ 项目定位 my-resume 是一个“边做边讲解”的实战仓库： - 面向 个人品牌 + 工程化简历产品 的长期迭代 - 保持 Issue 驱动、里程碑推进、可回滚 的研发节奏 - 兼顾 开发体验、部署可行性、教程产出 当前主线已具备完整闭环： - web ：公开简历展示（双语、主题、导出入口） - admin ：后台编辑、发布、AI 工作台 - server ：唯一业务后端（鉴权、简历、导出、AI/RAG） 🧭 在线地址（当前生产域名） - Web： - Admin： - API： 🏗️ 架构总览 🧱 技术栈 Layer Stack --- --- Frontend Next.js 15, React 19, HeroUI v3, Tailwind CSS v4 Backend NestJS 11, Drizzle ORM, libsql / SQLite AI 多 Provider（mock / qiniu / deepseek / openai-compatible）, RAG 最小链路 Tooling pnpm workspace, Turbo, Vitest, GitHub Actions, Docker Compose 🚀 快速开始 1) 环境要求 - Node.js 22 （见 ./.nvmrc ） - pnpm 10.8.0 2) 安装依赖 3) 配置环境变量 至少确认这些变量： - JWT SECRET - DATABASE URL - NEXT PUBLIC API BASE URL - RESUME API BASE URL - AI PROVIDER 与对应 API Key 4) 启动开发环境 默认端口： - Web: - Admin: - Server: 可按端单独启动： 5) 本地默认演示账号 - admin / admin123456 - viewer / viewer123456 首次启动会自动写入数据库 users 表（仅保存密码哈希，不保存明文）。 可通过 .env 中 AUTH ADMIN PASSWORD / AUTH VIEWER PASSWORD 覆盖默认密码。 仅用于本地教程演示，生产环境请替换。 🐳 Docker 本地一键启动 停止： 🚀 构建并部署到云服务器 想把简历部署到自己的云服务器？按这三步来。 第 1 步：本地构建 amd64 镜像 第 2 步：推送镜像到 GHCR 第 3 步：一键部署到 ECS 📖 完整部署教程 ⚠️ M 系列 Mac 默认构建 arm64，ECS 是 amd64，务必用 pnpm docker:build:ecs 。 🧪 测试与质量 常用命令： 覆盖率： 当前仓库使用 Vitest 本地生成覆盖率报告；Badge 暂为本地覆盖率模式（未接入外部覆盖率托管）。 📦 常用脚本（根目录） Command Description --- --- pnpm dev 三端并行开发 pnpm build 全量构建 pnpm typecheck 全量类型检查 pnpm test:ci CI 同款测试入口（unit + e2e） pnpm docker:up Docker Compose 启动 🚢 部署文档 - Vercel 与云服务器最小部署说明 - 开源版发布前检查清单 - GitHub Actions 连接 ECS 发布","default_branch":null,"files":null,"tree":[],"storefront":"/r/Fridolph","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Fridolph/my-resume/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}