{"id":22320810,"url":"https://github.com/baiwumm/vue2-admin","last_synced_at":"2025-10-29T15:45:59.383Z","repository":{"id":154115946,"uuid":"331811055","full_name":"baiwumm/vue2-admin","owner":"baiwumm","description":"Vue2 Admin 是一个前端基于 Ant Design Pro 二次开发，后端基于 Nest.js 的全栈后台应用","archived":false,"fork":false,"pushed_at":"2024-12-10T01:02:42.000Z","size":11823,"stargazers_count":48,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T13:43:14.162Z","etag":null,"topics":["antd-vue","nestjs","postgresql","prisma","vue"],"latest_commit_sha":null,"homepage":"https://vue2.baiwumm.com/","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mulanpsl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baiwumm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-01-22T02:12:53.000Z","updated_at":"2025-01-19T13:14:52.000Z","dependencies_parsed_at":"2024-11-29T09:29:44.199Z","dependency_job_id":null,"html_url":"https://github.com/baiwumm/vue2-admin","commit_stats":null,"previous_names":["baiwumm/vue2-admin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/baiwumm/vue2-admin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baiwumm%2Fvue2-admin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baiwumm%2Fvue2-admin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baiwumm%2Fvue2-admin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baiwumm%2Fvue2-admin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baiwumm","download_url":"https://codeload.github.com/baiwumm/vue2-admin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baiwumm%2Fvue2-admin/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267694877,"owners_count":24129149,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-29T02:00:12.549Z","response_time":2574,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antd-vue","nestjs","postgresql","prisma","vue"],"created_at":"2024-12-04T00:14:51.824Z","updated_at":"2025-10-29T15:45:59.365Z","avatar_url":"https://github.com/baiwumm.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\r\n  \u003cimg width=\"120\" src=\"./web//src/assets/logo.svg\" alt=\"Vue2 Admin\"\u003e\r\n\u003c/p\u003e\r\n\u003ch1 align=\"center\"\u003eVue2 Admin\u003c/h1\u003e\r\n\u003cp align=\"center\"\u003e📚 前端的全栈之路\u003c/p\u003e\r\n\u003cp align=\"center\"\u003e\r\n  \u003ca href=\"https://github.com/baiwumm/vue2-admin/stargazers\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/github/stars/baiwumm/vue2-admin.svg?style=flat-square\u0026logo=GitHub\" alt=\"stars\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://github.com/baiwumm/vue2-admin/blob/master/LICENSE\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/license-MIT-blue?style=flat-square\" alt=\"license\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://v2.cn.vuejs.org/\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/vue-2.7.14-brightgreen?style=flat-square\u0026logo=vue.js\" alt=\"vue\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://1x.antdv.com/docs/vue/introduce-cn/\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/ant--design--vue-1.7.8-blue?style=flat-square\u0026logo=ant-design\" alt=\"ant-design-vue\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://nestjs.com/\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/nestjs-10.0.0-ea2845?style=flat-square\u0026logo=nestjs\" alt=\"nestjs\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://www.postgresql.org/\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/postgresql-14.0-336791?style=flat-square\u0026logo=postgresql\" alt=\"postgresql\"\u003e\r\n  \u003c/a\u003e\r\n\u003c/p\u003e\r\n\r\n## 📖 项目简介\r\n\r\n[Vue2 Admin](https://vue2.baiwumm.com/) 是一个全栈后台管理系统，前端基于 [Ant Design Pro](https://github.com/vueComponent/ant-design-vue-pro) 二次开发，后端基于 [Nest.js](https://nestjs.com/) 构建。本项目集成了丰富的功能和最佳实践，非常适合全栈开发学习和实际项目参考。\r\n\r\n### 🚀 技术栈\r\n\r\n- **前端**：[Vue2](https://v2.cn.vuejs.org/) + [Ant Design Vue](https://1x.antdv.com/docs/vue/introduce-cn/) + [Vuex](https://vuex.vuejs.org/zh/)\r\n- **后端**：[Nest.js](https://nestjs.com/) + [PostgreSQL](https://www.postgresql.org/) + [Prisma](https://prisma.yoga/)\r\n\r\n### 🔗 快速链接\r\n\r\n- 📌 **在线预览**：[https://vue2.baiwumm.com/](https://vue2.baiwumm.com/)\r\n- 🔑 **测试账号**：用户名 `Admin`，密码 `abc123456`\r\n- 📝 **API文档**：[Swagger 接口文档](https://vue2.baiwumm.com/docs)\r\n\r\n\u003e ❤️ 如果这个项目对你有帮助，请给个 Star 支持作者，感谢！\r\n\r\n## 🌟 系统特性\r\n\r\n- 🌐 **动态国际化**：支持多语言配置与切换\r\n- 📝 **操作日志**：自动记录用户的 CRUD 操作，便于审计和追踪\r\n- 🔐 **权限管理**：完善的用户-角色-权限映射，基于角色动态生成路由菜单\r\n- 📢 **实时通知**：基于 SSE (Server-Sent Events) 的消息公告推送系统\r\n- 🧩 **丰富组件**：集成多种实用业务组件和交互效果\r\n- 🎨 **主题定制**：支持自定义主题和布局配置\r\n\r\n## 🛠️ 环境要求\r\n\r\n\u003e 推荐使用 [pnpm](https://github.com/pnpm/pnpm/) 作为包管理工具\r\n\r\n| 依赖项 | 最低版本 | 推荐版本 | 说明 |\r\n|-------|---------|---------|------|\r\n| [Node.js](https://nodejs.org/) | 18.12.0 | 18.19.0+ | JavaScript 运行环境 |\r\n| [Pnpm](https://pnpm.io/) | 8.7.0 | 最新版 | 高效的包管理工具 |\r\n| [Git](https://git-scm.com/) | 任意 | 最新版 | 版本控制工具 |\r\n| [PostgreSQL](https://www.postgresql.org/) | 13.0 | 最新版 | 关系型数据库 |\r\n\r\n## 🚀 快速开始\r\n\r\n### 1. 数据库配置\r\n\r\n1. 安装 [PostgreSQL](https://www.postgresql.org/) 数据库\r\n2. 导入 `/postgreSQL` 目录中的数据库文件\r\n3. 修改 `/server/.env` 文件中的数据库连接配置：\r\n\r\n```bash\r\nDATABASE_URL=\"postgresql://postgres:123456@localhost:5432/vue2-admin?schema=public\"\r\n```\r\n\r\n### 2. 克隆项目\r\n\r\n```bash\r\n# 克隆仓库\r\ngit clone https://github.com/baiwumm/vue2-admin.git\r\n\r\n# 进入项目目录\r\ncd vue2-admin\r\n```\r\n\r\n### 3. 安装依赖\r\n\r\n```bash\r\n# 全局安装 pnpm (如已安装可跳过)\r\nnpm install -g pnpm\r\n\r\n# 安装项目依赖\r\npnpm install\r\n```\r\n\r\n### 4. 启动开发服务\r\n\r\n```bash\r\n# 前端开发服务 (在 web 目录下)\r\ncd web\r\npnpm dev\r\n\r\n# 后端开发服务 (在 server 目录下)\r\ncd server\r\npnpm start:dev\r\n```\r\n\r\n### 5. 构建项目\r\n\r\n```bash\r\n# 构建前端\r\ncd web\r\npnpm build\r\n\r\n# 构建后端\r\ncd server\r\npnpm build\r\n```\r\n\r\n## 📝 开发指南\r\n\r\n### 新增路由菜单\r\n\r\n1. 在 `web/src/views` 目录下创建新的视图组件 `文件夹/index.vue`\r\n2. 在 `系统管理 \u003e 国际化 \u003e menu` 中添加对应的多语言配置\r\n3. 在 `系统管理 \u003e 菜单管理` 中添加新菜单项\r\n   - 参考已有菜单配置\r\n   - 路由配置详情请参考 [Ant Design Pro 路由和菜单](https://pro.antdv.com/docs/router-and-nav)\r\n4. 在 `系统管理 \u003e 角色管理` 中为相应角色分配菜单权限\r\n5. 保存并刷新页面，新菜单将会显示在导航中\r\n\r\n## 🧩 功能模块\r\n```\r\n- 登录 / 注销\r\n\r\n- 工作台\r\n\r\n- 智能行政\r\n  - 消息公告\r\n  - 组织管理\r\n  - 岗位管理\r\n  - 组织架构\r\n\r\n- 个人中心\r\n\r\n- 功能页\r\n  - 验证码\r\n  - 自定义 Vue 指令\r\n  - 懒加载\r\n  - 瀑布流\r\n  - 图片预览\r\n  - 拾色器\r\n  - 图片取色盘\r\n  - 系统级取色器\r\n  - Swiper\r\n  - 打印\r\n  - 文件预览\r\n  - 拖拽\r\n\r\n- 技术文档\r\n  - Vue2\r\n  - Nest.js\r\n  - Ant Design Vue\r\n  - Ant Design Pro\r\n\r\n- 系统设置\r\n  - 用户管理\r\n  - 菜单管理\r\n  - 角色管理\r\n  - 国际化\r\n  - 操作日志\r\n\r\n- 关于\r\n\r\n```\r\n\r\n### 📚 技术文档快速访问\r\n\r\n- [Vue2 文档](https://v2.cn.vuejs.org/)\r\n- [Nest.js 文档](https://nestjs.com/)\r\n- [Ant Design Vue 文档](https://1x.antdv.com/docs/vue/introduce-cn/)\r\n- [Ant Design Pro 文档](https://pro.antdv.com/)\r\n\r\n## 📸 系统截图\r\n\r\n\u003ctable\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/1.png\" alt=\"登录页面\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/2.png\" alt=\"工作台\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/3.png\" alt=\"消息公告\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/4.png\" alt=\"组织管理\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/5.png\" alt=\"岗位管理\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/6.png\" alt=\"组织架构\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/7.png\" alt=\"个人中心\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/8.png\" alt=\"功能页\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/9.png\" alt=\"用户管理\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/10.png\" alt=\"菜单管理\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/11.png\" alt=\"角色管理\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/12.png\" alt=\"国际化\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/13.png\" alt=\"操作日志\"\u003e\u003c/td\u003e\r\n    \u003ctd\u003e\u003cimg src=\"./demo/14.png\" alt=\"关于\"\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n## ⚠️ 注意事项\r\n\r\n1. 本项目主要用于学习和交流，可能存在一些未经严格测试的功能点\r\n2. 仅供个人学习和非商业用途使用\r\n3. 欢迎通过以下方式参与项目改进：\r\n   - 提交 [Issues](https://github.com/baiwumm/vue2-admin/issues) 反馈问题或建议\r\n   - 提交 [Pull Requests](https://github.com/baiwumm/vue2-admin/pulls) 贡献代码\r\n\r\n## 📄 许可证\r\n\r\n本项目基于 [MIT许可证](./LICENSE) 开源。\r\n\r\n## ⭐ Star 历史\r\n\r\n[![Star History Chart](https://api.star-history.com/svg?repos=baiwumm/vue2-admin\u0026type=Date)](https://star-history.com/#baiwumm/vue2-admin\u0026Date)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaiwumm%2Fvue2-admin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbaiwumm%2Fvue2-admin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaiwumm%2Fvue2-admin/lists"}