# koa2-auth-template **Repository Path**: chen00lele/koa2-auth-template ## Basic Information - **Project Name**: koa2-auth-template - **Description**: 基于koa2的后端开发模板,使用 sequelize + mysql + Redis + 权限管理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2023-04-27 - **Last Updated**: 2023-04-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README koa2-auth-template ### 介绍 [koa2-auth-template]是一个node后端服务的解决方案,前端对应的是naive-admin-vue3,数据库使用mysql结合sequelize简化sql语句操作。 以模块化为核心,每个模块下包含对应的控制层,服务层和数据库。使用注解的形式直接在控制层定义路由,并自动生成对应的api结构,用于前端分配,, 用jwt结合redis进行用户权限校验等等。 ### 软件架构 下面是整个项目的目录结构。 ```bash ├── .husky # Git Hook 工具 ├── bin # 启动目录 │ │── www # 启动文件配置 ├── src # 源代码 │ ├── config # 全局配置目录,包含:jwt配置,数据库配置,环境配置等 │ ├── db # sequelize的基础配置,包含:数据库连接,同步sequelize模型到数据库,sequelize类型封装,sequelize常用方法封装,简单的类型校验等 │ ├── libs # 系统使用的第三方库,主要是注解语法配置 │ ├── loaders # 初始化需要调用的插件,目前只有Redis │ ├── middlewares # 中间件,包含:参数获取,权限校验 │ ├── modules # ☆核心,定义系统的模块,目前有system模块,system里有对应该模块的控制层,服务层和数据库模型 │ ├── public # 静态资源 │ ├── schedule # 定时任务 │ ├── utils # 工具函数 │ ├── views # 前端模版文件-只做服务端忽略 │ ├── index.js # 入口文件,通过外层的 start.js调用 ├── test # 测试 ├── .babelrc # 转换es6语法和注解语法 ├── .editorconfig # 编辑相关配置 ├── .eslintignore # eslint忽略文件 ├── .eslintrc.js # eslint 配置 ├── .prettierrc # Prettier 配置 ├── commitlint.config.js # 集成 commitlint 验证提交规范 ├── package.json # package.json 依赖 ├── start.js # 启动文件 ``` ### 注意事项 #### 前序准备 你需要在本地安装 [node](http://nodejs.org/) ,Koa 依赖 **node v7.6.0** 或 ES2015及更高版本和 async 方法支持。 安装 mysql 安装 redis #### 安装依赖 ```bash npm install ``` #### 同步数据库模型 ```bash 新建数据库:test_db 用 Navicat执行sql:test_db.sql 数据库模型更新后,执行src/db/sync下的方法同步数据库模型到mysql ``` #### 启动本地开发环境(自带热启动) ```bash npm run dev ``` #### 构建生产环境 ```bash npm run prd ``` ### 运行单元测试 ```bash npm run test ```