{"id":19489018,"url":"https://github.com/zhulinwei/cms-server","last_synced_at":"2026-05-06T13:31:53.532Z","repository":{"id":42359749,"uuid":"148567652","full_name":"zhulinwei/cms-server","owner":"zhulinwei","description":"基于koa实现的内容管理系统后台接口","archived":false,"fork":false,"pushed_at":"2022-12-08T01:09:26.000Z","size":189,"stargazers_count":1,"open_issues_count":5,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-08T08:39:31.661Z","etag":null,"topics":["cms","docker","koa","monogodb","mvc"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zhulinwei.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-13T02:04:29.000Z","updated_at":"2020-05-04T15:57:52.000Z","dependencies_parsed_at":"2023-01-25T02:30:55.032Z","dependency_job_id":null,"html_url":"https://github.com/zhulinwei/cms-server","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhulinwei%2Fcms-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhulinwei%2Fcms-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhulinwei%2Fcms-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhulinwei%2Fcms-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhulinwei","download_url":"https://codeload.github.com/zhulinwei/cms-server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240731459,"owners_count":19848528,"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","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":["cms","docker","koa","monogodb","mvc"],"created_at":"2024-11-10T21:06:58.446Z","updated_at":"2026-05-06T13:31:48.496Z","avatar_url":"https://github.com/zhulinwei.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cms-server\n\n## 简介\ncms-server是基于koa实现的内容管理系统后台接口\n\u003e * 前台页面：https://github.com/zhulinwei/cms-client\n\u003e * 演示地址：http://www.51linwei.top\n\n## 组成\n\u003e * 1.用户系统\n\u003e * 2.统计系统\n\u003e * 3.任务系统\n\u003e * 4.通知系统\n\u003e * 5.博客系统\n\n## 功能介绍\n\n### 用户系统\n用户分为游客、用户、管理员不同角色，每种角色有不同权限：\n1. 游客：浏览\n2. 用户：留言\n3. 管理员：删除留言、发布文章、发布任务\n\n### 统计系统\n完成用户数量、文章分布等统计任务\n\n### 任务系统\n发布并分配任务\n\n### 通知系统\n错误警报、用户留言等通知\n\n#### 博客系统\n文章发布\n\n## 启动\n1. npm start\n2. pm2 start bin/pm2.json\n3. docker build -t cms-server; docker run -d cms-server\n\n## 环境变量\n|name|descript|demo|\n|----|--------|----|\n|NAME|项目名称|cms-server|\n|PORT|项目端口|3451|\n|NODE_ENV|项目环境|.|\n|HOSTNAME|host名称|localhost|\n|QINIU_HOST|七牛地址|.|\n|QINIU_BUCKET|七牛空间|.|\n|QINIU_ACCESS_KEY|七牛编号|.|\n|QINIU_SECRET_KEY|七牛秘钥|.|\n|QQ_WEB_APPID|QQ应用编号|.|\n|QQ_WEB_APPKEY|QQ应用秘钥|.|\n|MAIL_HOST|邮件地址|smtp.qq.com|\n|MAIL_PORT|邮件端口|465|\n|MAIL_USER|邮件账号|.|\n|MAIL_PASSWORD|邮件密码|.|\n|REDIS_CMS|Redis数据库URL|redis://localhost:6379/0|\n|MONGODB_CMS|MongoDB数据库URL|mongodb://localhost:27017|\n\n## 数据库设计\n\n### 任务表task\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|任务编号|\n|name|String|任务名称|\n|status|Int|任务状态|\n|nominee|String|执行人|\n|createTime|Date|创建时间|\n|updateTime|Date|更新时间|\n\n### 博客目录表blog_catalog\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|目录编号|\n|name|String|目录名称|\n|weight|Int|目录权重|\n|createTime|Date|创建时间|\n|updateTime|Date|更新时间|\n\n### 博客文章表blog_article\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|文章编号|\n|title|String|文章题目|\n|isTop|Boolean|文章置顶|\n|author|String|文章作者|\n|outline|String|文章简介|\n|content|String|文章内容|\n|thumbnail|String|文章缩略图|\n|catalogId|ObjectId|所属目录|\n|readCount|Int|阅读人数|\n|commentsCount|Int|评论人数|\n|createTime|Date|创建时间|\n|updateTime|Date|更新时间|\n\n### 管理员表admin\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|管理编号|\n|name|String|用户名字|\n|roles|Array|角色列表|\n|password|String|用户密码|\n|descript|String|职能描述|\n|loginIp|String|登录IP|\n|loginCount|String|登录次数|\n\n### 角色表role\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|角色编号|\n|name|String|角色名称|\n|permissions|Array|资源列表|\n\n### 许可表permission\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|许可编号|\n|action|String|操作种类|\n|source|String|资源路径|\n\n### 日志表log\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|日志编号|\n|username|String|用户名称|\n|type|String|日志类型|\n|action|String|操作种类|\n|source|String|资源路径|\n|ip|String|操作IP|\n|params|String|请求参数|\n|result|String|操作结果|\n\n### 菜单表menu\n|属性|类型|描述|\n|----|----|----|\n|_id|ObjectId|菜单编号|\n|name|String|菜单名称|\n|url|String|菜单路径|\n|icon|String|菜单图标|\n|type|String|菜单类型|\n|parentId|ObjectId|父级菜单|\n|hasChildren|Boolean|是否含有子菜单|\n|createTime|Date|创建时间|\n|updateTime|Date|更新时间|\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhulinwei%2Fcms-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhulinwei%2Fcms-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhulinwei%2Fcms-server/lists"}