fbi工作流

367 阅读2分钟

前端工程化,项目快速敏捷开发工作流

特性

  • 模板管理

    快速轻松地创建和构建项目。(版本3.x支持基于git的版本控制)

  • 任务管理

    轻松管理重复的流程,只需将重复的流程写进js文件里,并添加到fbi全局即可

  • 依赖管理

    您可以选择让fbi管理开发依赖项,并在多个项目之间共享,使项目目录更加简洁

  • 高扩展性

    创建适合您习惯的fbi全局模板和fbi插件,会使您的工作流程非常简单

简单使用

地址

核心

目标

fbi旨在打造一个以可持续扩展,高度可配置,收缩公共依赖和各种标准配置(eslint,tsconfig,webpackConfig等)为核心的生态工具链。

工作流程

fbi本身并无创建项目的功能,所有的能力基于官方模板进行延伸

  • factory-node,后台模板,在其下方创建node后端模板,如规范化的CURD接口模板,或者进阶版的包含组内公共业务模块的模板
  • factory-webweb模板,在其下方创建react/vue前端项目
  • factory-commands,fbi全局命令仓库,fbi的所有指令功能都在这个仓库里面维护,包含但不限于commitlintrunbuild等指令,使用方式就是先fbi add factory-commands,然后就可以fbi commit/lint

收缩配置

每个用fbi模板创建的项目的根目录都有一个.fbi.config.js配置文件,通过配置选项来获取额外功能增强(是否启用ts,引入标准化eslint配置,vscode全局配置等),或者自定义打包解析配置(覆盖webpack选项等)。

管理公共依赖

公共依赖的实现需要遵循fbi模板创建的规范,这个规范由项目组内部定义

  • 可以在项目迭代中抽离公共依赖,发布成npm包,然后在项目模板的依赖中,去引入这个包
  • 或者将公共依赖放在一个内部成员可以访问的域目录,然后以插件的形式去重写fbi的打包命令,将模块路径指向域目录。

个人推荐第一种方式

创建模板

模板的创建需要配合fbi的能力,比如项目的依赖,就要引入已经被打包的公共依赖包,还有公共eslintvscodets等项目配置的包,这些依赖和配置包有两种方式引入:

  1. 项目模板一定会用到的配置,就直接引入依赖包
  2. 项目模板中可选能力,用ejscommand line工具获取用户选项去添加对应依赖

模板中的可选能力都是通过ejs模板加command line工具获取用户选项实现的

待实现

收缩CI/CD配置

更多指令

更多模板

...