openstf二次开发

前阵子公司打算做安卓手机的多机同步,所以决定从二次开发openstf入手。stf是一个很厉害的项目,开发了一大批周边插件。今年有幸见过simo一次,真是又高又帅

前阵子公司打算做安卓手机的多机同步,所以决定从二次开发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').name