[开源]MIT协议、系列项目,目标是示范前后端分离的开发+部署模式

开源系统分类系统
2026-06-28 08:37 4 次浏览 • 0 次下载 0KB
[开源]MIT协议、系列项目,目标是示范前后端分离的开发+部署模式

一、开源项目简介

NiceFish

NiceFish(美人鱼) 是一个系列项目,目标是示范前后端分离的开发+部署模式。前端有3个版本:浏览器环境、移动端环境、Electron 环境;后端有2个版本:SpringBoot 版本和 SpringCloud 版本。

二、开源协议

使用MIT开源协议

三、界面展示

  

 

 

 

 

四、功能概述

iceFish(美人鱼) 是一个系列项目,目标是示范前后端分离的开发+部署模式。前端有3个版本:浏览器环境、移动端环境、Electron 环境;后端有2个版本:SpringBoot 版本和 SpringCloud 版本。

系列项目

NiceFish 的客户端项目:

名称

描述

NiceFish(美人鱼)

这是 Angular 版本的前端界面,基于最新的 Angular 版本,使用 PrimeNG 组件库。

NiceFish-React

这是 React 版本的前端界面,基于 React 18.0.0 ,使用 PrimeReact, 定制版 Bootstrap 开发。纯 JSX ,没有使用 TypeScript 。

nicefish-ionic

这是一个移动端的 demo,基于 ionic,此项目已支持 PWA。

NiceBlogElectron

这是一个基于 Electron 的桌面端项目,把 NiceFish 用 Electron 打包成了一个桌面端运行的程序。这是由 ZTE 中兴通讯的前端道友提供的,我 fork 了一个,有几个 node 模块的版本号老要改,如果您正在研究如何利用 Electron 开发桌面端应用,请参考这个项目。

NiceFish 的服务端项目:

名称

描述

nicefish-spring-boot

用来示范前后端分离模式下,前端代码与后端服务的对接方式,已经完成了基线版本。以此为基础,你可以继续开发出适合自己业务场景的代码。

nicefish-spring-cloud

用来示范前后端分离模式下,前端代码与分布式后端服务的对接方式。

五、技术选型

SpringBoot 版本的后端

开发环境

  • JDK 1.8
  • 开发工具 IDEA
  • 构建工具 Maven
  • MySQL >=5 or MariaDB >=10

3.用法

  • git clone 本项目
  • 用 IDEA 导入根目录下的 pom.xml
  • 在 MySQL 中执行 docs/nicefish-spring-boot.sql 脚本(包含测试数据)
  • 修改 application.yml 配置文件,把 MySQL 改成你自己的配置
  • 配置 Maven ,使用阿里云的源
  • 启动 nicefish-cms 模块下的 NiceFishApplication.java
  • Swagger 接口文档地址:http://localhost:8080/swagger-ui.html
  • druid 监控地址:http://localhost:8080/druid/sql.html

项目模块依赖关系

  • nicefish-core: 提供通用的工具
  • nicefish-shiro-rbac: 提供基于 Shiro 的通用认证和鉴权服务,RBAC 型。
  • nicefish-cms: 基于以上基础模块的 CMS 应用

Angular 版本的前端

主要依赖

  • Angular 15.2.4
  • PrimeNG 15.3.0
  • Bootstrap 3.4.1
  • echarts 5.4.2
  • ngx-echarts 15.0.3
  • ckeditor5-angular 5.2.0
  • font-awesome 4.7.0

注意:为了防止出现 NodeJS 模块兼容性问题,本项目在 package.json 中锁定了所有 Node 模块版本。如有需要,您可以自己测试兼容版本号(不建议这样做,因为会消耗掉大量的时间)。

启动项目

打开终端,依次执行以下命令:


访问一飞开源:https://code.exmay.com/ 下载
cd NiceFish
npm i -g @angular/cli
npm i
ng serve

打开浏览器,访问 http://localhost:4200/

中文开发者:网络原因,推荐安装 nrm 来管理 npm 的 registry。


npm i -g nrm
nrm use taobao

这时候用 npm 安装 node 模块就会使用 taobao 提供的 registry 了。

更多内容请查看 README.md 文档。

NiceFish(美人鱼)

NiceFish-React

nicefish-ionic

NiceBlogElectron


后端源码下载

nicefish-spring-boot

nicefish-spring-cloud