前阵子公司打算做安卓手机的多机同步,所以决定从二次开发openstf入手。stf是一个很厉害的项目,开发了一大批周边插件。今年有幸见过simo一次,真是又高又帅又白又是大长腿(误!)。
stf项目的介绍
github地址: https://github.com/openstf/stf.
这个项目是B/S架构,浏览器端使用的是pug模版引擎,前端使用的是angular1,服务器使用的是nodejs,数据库使用的是对象型数据库rethinkdb,构建工具使用的是webpack+gulp。如果改动了前端,直接保存运行就好。如果改动的是lib下面的后端代码,需要先gulp clean一下。
stf目录介绍
/lib 后端代码
/res 前端web的代码
/bin 启动文件,其实是链接到lib/cli.js
/node_modules npm相关的组件
/rethinkdb_data rethinkdb的数据库文件,建议在stf目录下执行rethinkdb
Package.json npm所需要安装的组件集,以json格式保存
启动stf
先启动rethinkdb,然后再使用stf local启动平台。
前端代码
涉及的前端知识
- webpack
- gulp
- angularjs
- bower
- angularjs
- Promise
- websocket
- protobuf
对于一个非专业前端开发人员来说,这块需要全部了解的话,还是需要花费不少时间的。我们就从简单的来说。前端入口js是res/app/app.js。
// An highlighted block
angular.module('app', [
'ngRoute',
'ngTouch',
require('gettext')