Superproject
是基于React
+Koa
全栈技术框架。
sp-base
是实现Superproject的基础代码,提供了启动程序和可扩展接口。
Client 可以扩展
redux middleware
redux reducer
react router
Server 可以扩展
koa middleware
koa router
// 新的使用use和mount,充分利用koa的中间件机制
Client
import { redux, router, createConfigureStore, run } from 'superproject/client'
client.redux.use() // redux中间件
client.redux.reducer.use() // redux的reducer挂载
client.router.use() // react-router挂载
client.run() // 运行客户端
Server
import { middleware, router, commonMiddlewares, run } from 'superproject/server'
server.middleware.use() // koa-middleware中间件
server.router.use() // koa-router挂载
server.run() // 运行服务端
例子 | 说明 |
---|---|
sp-boilerplate | Superproject 项目示例 |
核心基础 | 说明 |
---|---|
sp-base | Superproject基础代码 |
工具 | 说明 |
---|---|
sp-css-loader | 处理组件化样式的webpack loader,可与file-loader配合使用 |
服务端中间件(Koa) | 说明 |
---|---|
sp-react-isomorphic | React(Redux)同构Koa中间件 |
模块 | 说明 |
---|---|
sp-css-import | 辅助sp-css-loader加载样式 |
sp-email | 发邮件 |
sp-sms | 发短信 |
sp-mongo | mongodb 操作对象 |
sp-qiniu | 七牛存储操作 |
功能 | 说明 |
---|---|
sp-wx | 微信相关功能 |
sp-cms | cms模块功能 |
sp-api | api接口生成 |
sp-schedule | 时间表、计划任务 |
sp-auth | 权限管理+登录 |
组件化 - React
状态管理 - Redux
路由 - React-Router
同构 - React RenderToString
Style导入 - wapper-css-loader
打包工具 - webpack2
组件库 - Material-UI
CSS编译 - Less \ CSS
ES6\7编译 - Babel
单元测试 - Mocha
HTTP服务 - Koa2
静态服务器 - 七牛云
缓存服务 - Redis
数据库 - MongoDB
NodeJS进程管理 - PM2
HTTP反向代理 - Nginx
环境容器 - Docker
代码管理 - Git
持续集成 - Jenkins
Server API Response
{
"code": 200, // 类似 HTTP Status Code
"data": [], // or {}
"msg": "返回提示语"
}