基于 Nest.js(Node.js) + React 的模块化敏捷开发系统架构 Notadd 2.0 Beta2 发布(Nodejs相关)
基于 Nest.js(Node.js) + React 的模块化敏捷开发系统架构 Notadd 2.0 Beta2 发布(Nodejs相关)
前言
大多数 node.js 框架都没解决架构问题,使得 node.js 没能像 spring 一样的适合大型项目开发和维护的框架。nest.js 出现改变了这种现状。 我们基于 nest.js 开发了 Notadd,更加解决了快速开发需求。
[开发快] 像搭积木一样快速满足自己的开发需求
[高性能] 单机并发轻松上万
[易维护] 类 spring 一般优秀的架构,便于维护和二次开发
更新内容
新增:
- 拓展机制的支持
- 支持 RPC 通信
- 基于 npm 的应用升级机制
- 多语言机制的支持
- 完整的后端 json 表单生成机制
优化:
- 升级 Material-ui 至 1.0 Beta35
- 安装流程优化(支持创建后台用户名密码)
- sqlite 不再要求输入数据库名 用户名等
修复:
- 修复 yarn dev 无法运行的问题。
- 修复 yarn install 安装时部分包由于 ts 版本导致的编译问题。
相关技术
- Typescript
- Node.js & Nest.js
- React.js & material-ui
- GraphQL API
- Redis
特点
- [x] 前后端完全分离,页面无刷新,大大降低后端负载
- [x] 异步高性能应用,单机并发轻松上万
- [ ] 支持 SSR 渲染,更好的 SEO
- [x] 支持 React 动态表单生成
- [x] GraphQL 接口,多次请求合并
- [x] 基于 Typeorm 原生支持超过 6 种数据库
- [x] 原生支持 Websocket 实时通信
- [x] 原生支持 Grpc,可跨进程,跨语言,跨服务器通信
- [ ] 支持 PWA 技术,实现断网提醒,断网表单保存,网页离线消息推送。
模块化设计
(配图是 PHP 版的,后续修改)
企业官网:CMS 模块 + Neditor 插件、留言板插件
信息发布:CMS 模块、用户模块 + CMS 多用户插件、Neditor 插件
微信商城: 用户模块、商城模块、微信模块 + 微信大转盘、支付插件、线下核验插件
餐饮方案: 用户模块、商城模块、微信模块 + 点餐插件、扫码支付插件、客流监测插件... + 红外传感拓展、WIFI 探针拓展
酒店方案: 用户模块、酒店模块、微信模块 + 预定插件、支付插件、智能 WIFI 插件 + WIFI 探针拓展、门卡系统拓展
CRM 系统: 用户模块、CRM 模块...
更多可畅想的...
CDN 方案
(配图是 PHP 版的,后续修改)
系统环境
支持系统:Linux / macOS / Windows 2008 及以上版本
Node.js 版本:≥8.0
数据库:PostgreSQL 9.4+/ MySQL 5.7+ / Oracle 12+ / MS SQL Server 2012+ / MariaDB 10.2.28+ / SQLite 3.9+
缓存:Redis 3.2+ (当前版本非必须)
2.0 后台的全平台支持 (手机、PC、平板)
现在,2.0 的后台管理完整支持了手机、PC、平板,后台操作更加随心所欲。
2.0 后台 json 生成表单
常用的表单都可以通过 json 生成,后端不需要再写 React 代码。
2.0 初步的多数据库支持
现在,在安装过程中可以选择数据库,并且输入相应的信息就能下载对应的驱动并且建立数据库连接。
快速开始
下载
git clone https://github.com/notadd/notadd.git --branch=next
码云高速下载:
git clone https://gitee.com/notadd/notadd.git --branch=next
安装
执行 NPM 包安装,(如无 yarn,请先执行 npm i yarn -g
)
yarn install
自动创建数据库配置
yarn run:install
必须使用 yarn !!!必须使用 yarn !!!必须使用 yarn !!!
运行
yarn dev
更新月报
下载地址
一点说明
3 月将发布 用户中心模块 和 CMS 模块 ,4 月 /5 月 后续还会有 商城模块、微信模块~
以下是对该帖子的专业回复:
Notadd 2.0 Beta2的发布标志着基于Nest.js(Node.js)与React的模块化敏捷开发系统架构迈出了重要一步。这一系统架构结合了Nest.js的后端强大功能与React的高效前端体验,为开发者提供了高性能、易维护和可扩展的Web应用开发解决方案。
Nest.js作为TypeScript构建的现代全栈框架,通过模块化系统、依赖注入和类型安全特性,极大地提升了后端开发的效率与规范性。以下是一个简单的Nest.js服务和控制器创建示例:
// src/app.module.ts
import { Module } from '@nestjs/common';
import { UsersModule } from './users/users.module';
@Module({
imports: [UsersModule],
})
export class AppModule {}
// src/users/users.module.ts
import { Module } from '@nestjs/common';
import { UsersController } from './users.controller';
import { UsersService } from './users.service';
@Module({
controllers: [UsersController],
providers: [UsersService],
})
export class UsersModule {}
React以其轻量、高效和丰富的生态支持成为现代Web应用前端开发的首选框架。两者结合,不仅能够提供高性能的前端体验,同时拥有强大的后端支持和丰富的数据交互能力。
Notadd 2.0 Beta2的模块化设计使得开发者可以根据业务需求快速搭建系统,同时支持多种数据库和缓存解决方案,如Redis等,进一步提升了系统的灵活性和可扩展性。