简介
开源地址:
https://github.com/pietrzakadrian/bank
这套开源银行应用程序使用ReactJS + Redux与NodeJS(Express + TypeORM),WebSocket,RESTful API和MySQL的完整堆栈Web应用程序。
网站截图如下:
功能列表
- 根据react-boilerplate中使用的最佳实践创建的应用程序
- 通过TypeORM使用MySQL数据库的关系模型
- 使用REST API支付当前费率支持多种货币
- 使用react-intl即时更改英语,波兰语和德语
- 使用WebSocket实现通知 + 支付系统(socket.io)
- 使用Jest,Mocha,Chai和react-testing-library进行单元和组件测试
前端技术栈
- JavaScript(ES6 +)
- ReactJS与React-Router
- Redux.js与Redux-Saga
- 材质UI框架
- 风格组件
- 使用Jest和react-testing-library进行单元和组件测试
后端技术栈
- TypeScript
- NodeJS与Express.js框架
- TypeORM
- MySQL数据库
- 具有基本和JWT身份验证的RESTful API
- Swagger文档
- 使用Mocha和Chai进行单元测试
数据库设计如下图
快速上手
安装需知
- yarn v1.17 +
- NodeJS v8 +
- MySQL v5.6 +
下载代码:
git clone https://github.com/pietrzakadrian/bank.git
对于前端:
- 克隆此存储库并进入frontend目录
- 更改BASE_URL在/app/utils/api.js您的本地主机服务器
- 通过运行安装依赖项 yarn
- 通过运行启动项目 yarn start
对于后端:
- 克隆此存储库并进入backend目录
- 创建2个MySQL数据库。(一个用于测试,另一个用作主数据库)
- 复制env.example并.env从中创建一个新文件。
- 在那里设置配置参数(应用程序端口,应用程序主机,数据库主机,端口,用户名,密码等)
- 通过运行安装依赖项 yarn
- 通过运行启动项目 yarn start
总结
这套系统可能不太适用,国内的微信支付、支付宝支付、银行卡支付等场景,但是作为一个开源系统,又基于react+redux+nodejs+restful api+ mysql的技术栈,加上前端单元测试,组件测试(jest),api接口测试(mocha)等等现成代码可以参考,可以说是全栈工程师的必备参考项目。