# wxd **Repository Path**: wellbye/wxd ## Basic Information - **Project Name**: wxd - **Description**: wxd还?? - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-12-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 老季的 bb 交易项目 ## 目录 - [项目结构](#结构) - [协议定义](#协议定义) - [工具脚本](#工具脚本) - [npm run dev-local-src](#npm-run-dev-local-src) - [npm run dev-local-dist](#npm-run-dev-local-dist) - [npm run dev-docker-src](#npm-run-dev-docker-src) - [npm run dev-docker-dist](#npm-run-dev-docker-dist) - [npm run deploy-docker](#npm-run-deploy-docker) ## 结构 ``` root/ README.md web/ tserver/ tools/ ``` - `web` web 客户端,基于 react+mobx+socket.io 实现的 SPA(单页应用) - `tserver` 由 typescript+express 实现的后台 api - `tools` 各种调试、运行、构建、部署相关的脚本 ## 协议定义 前后端交互通过两种方式进行:http 请求和 websocket 推送 http 用来实现所有的主动式请求,如用户和订单管理等 协议内容使用 swagger 定义: https://app.swaggerhub.com/apis/fatfatson/jbb/1.0.0 websocket 用来实现推送数据,如报价等 协议内容由 typescript 代码直接定义 interface 来描述 ## 工具脚本 脚本都在`tools`目录下,简短的,直接写在 package.json 中以 npm cmd 形式存在 复杂的则写成单独的脚本文件,其中常用的仍应添加相应的 npm cmd 形式 调试运行类脚本以 dev-开头,分为两类,每类又分两种: 直接在 native os 上运行的,以 dev-local-开头, 通过 docker 运行的,以 dev-docker-开头 而运行的内容,可以是即时编译的源码,以-src 结尾,也可以是构建好的最终代码,以-dist 结尾 ### `npm run dev-local-src` 执行 web 和 tserver 中的 watch 脚本,同时监控前后端所有源码变化,非常方便开发调试 ### `npm run dev-local-dist` tserver 构建目录为 dist,可以直接以 node 运行之 web 构建目录为 build,是一个纯静态 html 目录,以 serve 运行之 ### `npm run dev-docker-src` ### `npm run dev-docker-dist` 与`dev-local-*`一样,区别是启动两个 docker 容器来运行 这两个命令的目的是方便在开发机上测试 docker 运行的效果,因为最终部署出去是在 docker 里运行的 ### `npm run deploy-docker`