Skip to content

sankeyangshu/nest-template-cms

Repository files navigation

nest-template-cms

使用 Nest+TS 构建的 CMS 开发框架

license version languages


简介

🚀🚀🚀 nest-template-cms 一个基于 nestjs 框架的后台管理系统的基础模块的应用,使用了NestJsMySQL2TypeORMDockerRedisTypescript等主流技术开发,集成了 jwt 认证模块、rbac 权限模块、cms 模块、swagger 模块、日志模块等诸多模块,集成了代码规范检查工具EslintPrettier。你可以在此之上直接开发你的业务代码!希望你能喜欢。👋👋👋

注 1:如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢!

注 2:由于本人工作较忙,所以项目更新频率较慢,但是本项目会长期维护,有问题可以提issue, 同时也欢迎大家来共建此项目,包括但不限于:bug 修复、代码优化、功能开发等等

✨ 项目功能

  • 🚀 采用最新技术栈开发:NestJs、MySQL2、TypeORM、Docker、Redis、TypeScript
  • 🚀 整个项目集成了 TypeScript
  • 🚀 使用 Prettier 统一格式化代码,集成 Eslint 代码校验规范(项目规范配置)
  • 🚀 使用 husky、lint-staged、commitlint 规范提交信息(项目规范配置)

基础知识

提前了解和学习这些知识会对使用本项目有很大的帮助。

  • NestJs - 熟悉 NestJs 基础语法
  • TypeORM - 熟悉 TypeORM基本使用
  • TypeScript - 熟悉 TypeScript 基本语法
  • Es6+ - 熟悉 ES6 基本语法

配套资源

环境准备

本地环境需要安装 pnpm7.xNode.jsGit

  • 必须使用pnpm7.x,否则依赖可能安装不上。
  • Node.js 版本要求12.x以上,这里推荐 16.x 及以上。

Vscode 配套插件

如果你使用的 IDE 是vscode(推荐)的话,可以安装以下工具来提高开发效率及代码格式化

安装和使用

🚀 使用脚手架

Galaxy-CLI 是一个用于快速生成各种前后端项目模版的脚手架。

# 选择合适的包管理工具安装脚手架
npm i -g galaxy-cli-core

# yarn
yarn global add galaxy-cli-core

# 推荐使用pnpm进行安装
pnpm i -g galaxy-cli-core

# 创建项目,按照脚手架提示,选择nest-template-cms模板
galaxy init <projectName>

# 进入项目目录
cd <projectName>

# 安装依赖 - 推荐使用pnpm
pnpm install

# 启动服务 development 模式
pnpm start:dev

# 启动服务 production 模式
pnpm start:prod

# 打包发布
pnpm build

克隆使用

# 克隆项目
git clone https://github.com/sankeyangshu/nest-template-cms.git

# 进入项目目录
cd nest-template-cms

# 安装依赖 - 推荐使用pnpm
pnpm install

# 启动服务 development 模式
pnpm start:dev

# 启动服务 production 模式
pnpm start:prod

# 打包发布
pnpm build

如何贡献

你可以提一个 issue 或者提交一个 Pull Request。

Pull Request:

  1. Fork 代码
  2. 创建自己的分支: git checkout -b feat/xxxx
  3. 提交你的修改: git commit -am 'feat(function): add xxxxx'
  4. 推送您的分支: git push origin feat/xxxx
  5. 提交 pull request

Git 贡献提交规范

  • feat: 新增功能
  • fix: 修复 bug
  • docs: 文档变更
  • style: 代码格式(不影响功能,例如空格、分号等格式修正)
  • refactor: 代码重构(不包括 bug 修复、功能新增)
  • perf: 性能优化
  • test: 添加、修改测试用例
  • build: 构建流程、外部依赖变更(如升级 npm 包、修改 webpack 配置等)
  • ci: 修改 CI 配置、脚本
  • chore: 对构建过程或辅助工具和库的更改(不影响源文件、测试用例)
  • revert: 回滚 commit

许可证

MIT License